What Was Announced
Java 26 reached General Availability on March 17, 2026, as the first non-LTS release since Java 25 (the current LTS). Released on the usual six-month cadence, this version focuses on incremental progress across language features, library improvements, performance, and security — continuing the rhythm of smaller, more frequent releases rather than holding features back for a big-bang LTS drop.
JDK 27, the next release, is scheduled for September 2026.
Key Features and Changes
Java 26 delivers exactly 10 JEPs, five of which introduce new stable features and five that remain in preview or incubator stage.
Stable / finalized JEPs:
- JEP 516 — Ahead-of-Time Object Caching with Any GC: Extends the AoT caching mechanism from JDK 25 so it now works with any garbage collector, including the low-latency ZGC. Previously the caching was restricted to G1. This is significant for latency-sensitive applications that need both fast startup and low pause times.
- HTTP/3 for the HTTP Client API: The standard Java
HttpClientnow supports HTTP/3, making it practical for modern API clients without pulling in a third-party dependency. - Prepare to Make
finalMeanfinal: Lays the groundwork for restricting subclassing of certain JDK types — part of the longer-term Project Leyden and integrity goals.
Preview / Incubator JEPs:
- JEP 524 — PEM Encodings of Cryptographic Objects (Second Preview): Simplifies reading and writing PEM-encoded certificates, private keys, and public keys directly from Java code. Updated after feedback from the JDK 25 first preview.
- Structured Concurrency (Sixth Preview): Continues to refine the API for treating groups of related tasks as a single unit of work.
- Lazy Constants (Second Preview): Allows declaring constants whose values are computed lazily and cached, useful for expensive initialisation.
- Vector API (Eleventh Incubator): The SIMD vector computation API continues to mature, awaiting Project Valhalla value types before finalisation.
Why It Matters for Developers
The AoT Object Caching expansion is the most practically impactful change for teams running Java in containerised or serverless environments. Being able to combine AoT caching with ZGC means you no longer have to choose between startup speed and consistent low latency at runtime — a trade-off that previously pushed some teams toward GraalVM native image.
HTTP/3 support in the standard library removes a common reason to pull in Netty or other async HTTP clients for applications that need QUIC-based transport.
For most application developers, this is a maintenance-style upgrade — upgrade your toolchain, test with preview features enabled if you want early access, and wait for the finalisations in JDK 27 or JDK 28 (the next LTS candidate).
Source
Read the original article — InfoQ