286: Local-Variable Type Inference
var list = new ArrayList<String>(); // infers ArrayList<String>
var stream = list.stream(); // infers Stream<String>
A local-variable type inference to enhance the language to extend type inference to local variables. The intent is to reduce the “ceremony” associated with coding while maintaining a commitment to static type safety.
296: Consolidate the JDK Forest into a Single Repository – Consolidation of the repositories of the JDK forest into a single repository to streamline development. The code base, until now, has been broken into multiple repos, which can cause problems with source-code management.
304: Garbage-Collector Interface – A clean garbage collector interface to improve source-code isolation of different garbage collectors. The goals for this effort include better modularity for internal garbage collection code in the HotSpot virtual machine and making it easier to add a new garbage collector to HotSpot.
307: Parallel Full GC for G1 – Parallel full garbage collection for the G1 garbage collector. The intent is to improve worst-case latencies by implementing parallelism.
310: Application Class-Data Sharing – Application class-data sharing to reduce the footprint by sharing common class metadata across processes. Startup time is improved as well.
312: Thread-Local Handshakes -Introduce a way to execute a callback on threads without performing a global VM safepoint. Make it both possible and cheap to stop individual threads and not just all threads or none.
313: Remove the Native-Header Generation Tool (javah)
314: Additional Unicode Language-Tag Extensions
316: Heap Allocation on Alternative Memory Devices
317: Experimental Java-Based JIT Compiler – Enabling the Grall Java-based just-in-time compiler to be used in an experimental fashion on the Linux/x64 platform
319: Root Certificates
322: Time-Based Release Versioning
Extra Notes –
- JDK 10 key notes are available on Keynotes : Oracle code Chicago (YouTube).
- JDK 11 will be release in September 18.
- Java EE is named as Jakarta EE.
Further details can be found @ http://openjdk.java.net/projects/jdk/10/