BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News JDK 26 and JDK 27: What We Know So Far

JDK 26 and JDK 27: What We Know So Far

Listen to this article -  0:00

JDK 26, the first non-LTS release since JDK 25, has reached its second release candidate as declared by Mark Reinhold, Chief Architect, Java Platform Group at Oracle. The main-line source repository, forked to the JDK stabilization repository in early-December 2025 (Rampdown Phase One), defines the feature set for JDK 26. Critical bugs, such as regressions or serious functionality issues, may be addressed, but must be approved via the Fix-Request process. As per the release schedule, JDK 26 will be formally released on March 17, 2026.

The final set of 10 new features, in the form of JEPs, can be separated into five (5) categories: Core Java Library, HotSpot, Java Language Specification, Security Library and Client Library.

Five (5) of these new features are categorized under Core Java Library:

Two (2) of these new features are categorized under HotSpot:

One (1) of these new features are categorized under Java Language Specification:

One (1) of these new features are categorized under Security Library:

And finally, one (1) of these new features are categorized under Client Library:

We examine some of these new features and include where they fall under the auspices of the major Java projects - Amber, Loom, Panama, Valhalla and Leyden - designed to incubate a series of components for eventual inclusion in the JDK through a curated merge.

Project Amber

JEP 530, Primitive Types in Patterns, instanceof, and switch (Fourth Preview), proposes a fourth preview, with two changes, after three rounds of preview delivered in JDK 25 through JDK 23. The changes include: enhance the definition of unconditional exactness; and the application of tighter dominance checks in switch constructs.

Project Loom

JEP 525, Structured Concurrency (Sixth Preview), proposes a sixth preview after five rounds of previous preview delivered in JDK 19 through JDK 25. This feature simplifies concurrent programming by introducing the concept of structured concurrency to "treat groups of related tasks running in different threads as a single unit of work, thereby streamlining error handling and cancellation, improving reliability, and enhancing observability." The only significant change is the addition of a onTimeout() method to the StructuredTaskScope.Joiner interface, that allows for implementations of that interface to return a result after the timeout expires.

Project Panama

JEP 529, Vector API (Eleventh Incubator), proposes an eleventh incubation, with no substantial implementation changes since JDK 25, after ten rounds of incubation delivered in JDK 16 through JDK 25. This feature introduces an API to "express vector computations that reliably compile at runtime to optimal vector instructions on supported CPU architectures, thus achieving performance superior to equivalent scalar computations." The Vector API will continue to incubate until the necessary features of Project Valhalla become available as preview features. At that time, the Vector API team will adapt the Vector API and its implementation to use them, and will promote the Vector API from Incubation to Preview.

Security Library

JEP 524, PEM Encodings of Cryptographic Objects (Second Preview), proposes a second round of preview, with changes, after the first round of preview, namely JEP 470, PEM Encoding of Cryptographic Objects (Preview), delivered in JDK 25. Changes include: a rename of the PEMRecord class to PEM; and an enhancement of the PEMEncoder and PEMDecoder classes to support the encryption and decryption of the KeyPair and PKCS8EncodedKeySpec classes.

HotSpot

JEP 522, G1 GC: Improve Throughput by Reducing Synchronization, proposes to reduce the overhead of the G1 garbage collector to improve synchronization between application threads and GC threads.

JEP 516, Ahead-of-Time Object Caching with Any GC, proposes to enhance JEP 483, Ahead-of-Time Class Loading & Linking, delivered in JDK 24, for improved startup and warmup time such that it can be used with any garbage collector, including the low-latency Z Garbage Collector (ZGC).

JDK 27

Scheduled for a GA release in September 2026, only one (1) JEP has been targeted for JDK 27 at this time. However, based on a number of JEP candidates and drafts, especially those that have been submitted or an incremental preview, we can surmise which JEPs have the potential to be included in JDK 27.

JEP 527, Post-Quantum Hybrid Key Exchange for TLS 1.3, has been Targeted for JDK 27. This JEP proposes to enhance the implementation of RFC 8446, Transport Layer Security (TLS) Protocol Version 1.3, using the Hybrid Key Exchange in TLS 1.3 specification, currently being drafted by the Internet Engineering Task Force (IETF) in conjunction with JEP 496, Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism, delivered in JDK 24.

JEP 401, Value Classes and Objects (Preview), under the auspices of Project Valhalla, proposes to enhance the language with value objects, defined as objects that: only contain final fields; do not have identity; and are solely distinguished by the values of their respective fields.

JEP Draft 8376595, Lazy Constants (Third Preview), proposes a third preview, with two changes, after two rounds of preview delivered in the upcoming release of JDK 26 and JDK 25. The changes include: removal of the methods, isInitialized() and orElse(), from the LazyConstant interface, as they do not align with the design goals of this feature; and a new factory method, ofLazy(), that can create a stable, pre-defined elements for all three Java collection types, namely: List, Set and Map.

JEP Draft 8329758, Faster Startup and Warmup with ZGC, proposes to enhance the Z Garbage Collector to more efficiently allocate memory in response to the needs of an application. Startup time can be minimized by creating only a small initial heap that reduces the overhead of the operating system.

Please note that draft JEPs may be subject to change at any time. We anticipate that Oracle will start targeting additional JEPs for JDK 27 very soon.

About the Author

Rate this Article

Adoption
Style

BT