Java 16 | Java 15 | Java 14 | Java 13 | Java 12 | Java 11 | Java 10 | Java 9 | Java 8
Java 11
Release notes | Specification | JEPs
JEP Name Category Summary
181 Nest-Based Access Control
Introduce nests, an access-control context that aligns with the existing notion of nested types in the Java programming language. Nests allow classes that are logically part of the same code entity, but which are compiled to distinct class files, to access each other's private members without the need for compilers to insert accessibility-broadening bridge methods.
309 Dynamic Class-File Constants
Extend the Java class-file format to support a new constant-pool form, CONSTANT_Dynamic. Loading a CONSTANT_Dynamic will delegate creation to a bootstrap method, just as linking an invokedynamic call site delegates linkage to a bootstrap method.
315 Improve Aarch64 Intrinsics
Improve the existing string and array intrinsics, and implement new intrinsics for the java.lang.Math sin, cos and log functions, on AArch64 processors.
321 HTTP Client
Standardize the incubated HTTP Client API introduced in JDK 9, via JEP 110, and updated in JDK 10.
324 Key Agreement with Curve25519 and Curve448
Implement key agreement using Curve25519 and Curve448 as described in RFC 7748.
327 Unicode 10
Upgrade existing platform APIs to support version 10.0 of the Unicode Standard.
329 ChaCha20 and Poly1305 Cryptographic Algorithms
Implement the ChaCha20 and ChaCha20-Poly1305 ciphers as specified in RFC 7539. ChaCha20 is a relatively new stream cipher that can replace the older, insecure RC4 stream cipher.
330 Launch Single-File Source-Code Programs
Enhance the java launcher to run a program supplied as a single file of Java source code, including usage from within a script by means of "shebang" files and related techniques.
331 Low-Overhead Heap Profiling
Provide a low-overhead way of sampling Java heap allocations, accessible via JVMTI.
332 Transport Layer Security (TLS) 1.3
Implement version 1.3 of the Transport Layer Security (TLS) Protocol RFC 8446.
335 Deprecate the Nashorn JavaScript Engine
Deprecate the Nashorn JavaScript script engine and APIs, and the jjs tool, with the intent to remove them in a future release.
336 Deprecate the Pack200 Tools and API
Deprecate the pack200 and unpack200 tools, and the Pack200 API in java.util.jar.
333 ZGC: A Scalable Low-Latency Garbage Collector (Experimental)
Garbage Collector
The Z Garbage Collector, also known as ZGC, is a scalable low-latency garbage collector.
320 Remove the Java EE and CORBA Modules
Pruning
Remove the Java EE and CORBA modules from the Java SE Platform and the JDK. These modules were deprecated in Java SE 9 with the declared intent to remove them in a future release.
328 Flight Recorder
Tools
Provide a low-overhead data collection framework for troubleshooting Java applications and the HotSpot JVM.
318 Epsilon: A No-Op Garbage Collector (Experimental)
Garbage Collector
Develop a GC that handles memory allocation but does not implement any actual memory reclamation mechanism. Once the available Java heap is exhausted, the JVM will shut down.
323 Local-Variable Syntax for Lambda Parameters
Language
Allow var to be used when declaring the formal parameters of implicitly typed lambda expressions.