Java 26 Ships with HTTP/3 Support, GC-Independent AOT Caching, and the End of the Applet API
Oracle releases JDK 26 with ten JEPs spanning HTTP/3 client support, garbage-collector-independent ahead-of-time object caching, G1 throughput gains of up to 15 percent, and the final removal of the Applet API deprecated since JDK 17.
Oracle released Java 26 on March 18, delivering ten JDK Enhancement Proposals that advance the platform’s performance, security, and library capabilities. As the first non-LTS release since JDK 25, the update carries six months of Premier-level support and serves as a proving ground for features expected to stabilize in future long-term-support versions.
“The new features in Java 26 reflect Oracle’s commitment to helping customers harness AI and cryptography to build applications that accelerate business growth,” said Georges Saab, senior vice president of the Oracle Java Platform.
Ahead-of-time object caching reaches every garbage collector
The marquee performance addition is JEP 516, which extends Project Leyden’s ahead-of-time object caching to work with any garbage collector, including ZGC. Previous implementations in JDK 24 were limited to G1 and achieved up to 42 percent faster startup times. JDK 26 introduces a GC-independent format that uses index-based object references rather than direct heap mapping, loading objects sequentially and storing them in each collector’s native format. The change means applications running ZGC, using disabled compressed object pointers, or operating on heaps exceeding 32 GB can now benefit from the same startup acceleration.
G1 garbage collector gains 5 to 15 percent throughput
JEP 522 targets the G1 garbage collector’s synchronization overhead. The optimization introduces a dual card-table strategy in which application threads write to one table while the refinement thread processes the other, swapping as needed. Oracle reports throughput improvements of 5 to 15 percent with roughly 0.2 percent additional heap overhead. The change activates automatically and requires no configuration.
HTTP/3 arrives in the HTTP Client API
JEP 517 adds HTTP/3 support to the HttpClient API, enabling applications to interact with HTTP/3 servers with minimal code changes. Developers can specify HttpClient.Version.HTTP_3 as a version parameter; if a server does not support the protocol, the client transparently falls back to HTTP/2. The underlying implementation uses IETF QUIC. HTTP/2 remains the default, reflecting the fact that roughly one-third of websites currently support HTTP/3.
Security and cryptography updates
Two JEPs address cryptographic capabilities. JEP 524 provides a second preview of the PEM encoding API for converting keys, certificates, and certificate revocation lists into Privacy-Enhanced Mail format. The update renames the PEMRecord class to PEM, adds a decode() method, and enhances encryption methods supporting KeyPair and PKCS8EncodedKeySpec objects. Beyond the formal JEPs, Java 26 also introduces hybrid public key encryption and post-quantum-ready JAR signing, the latter aimed at safeguarding supply-chain integrity against future quantum threats.
JEP 500, titled “Prepare to Make Final Mean Final,” begins issuing warnings when code mutates final fields through deep reflection. Oracle describes this as part of Java’s “integrity by default” principle, with future releases expected to convert the warnings into hard errors.
Previews and incubators continue
Five of the ten JEPs remain in preview or incubator stages. Structured Concurrency (JEP 525) reaches its sixth preview, treating groups of related tasks as single work units for streamlined error handling and cancellation. Lazy Constants (JEP 526) enters a second preview, offering unmodifiable data holders that the JVM can treat as true constants. Primitive Types in Patterns (JEP 530) advances to a fourth preview, extending pattern matching to primitive types in instanceof and switch expressions. The Vector API (JEP 529) continues in its eleventh incubation, targeting optimal CPU vector instructions on x64 and AArch64 architectures.
Applet API removed after five years of deprecation
JEP 504 completes the removal of the Applet API, which was deprecated for removal in JDK 17 in 2021. Neither modern browsers nor recent JDK releases have supported applets, making the removal a long-anticipated cleanup.
Ecosystem additions
Alongside the JDK release, Oracle announced the Java Verified Portfolio, a curated set of enterprise-grade tools that includes commercial support for JavaFX, the Helidon microservices framework with LangChain4j and Model Context Protocol integrations, and a Java Platform extension for Visual Studio Code. The portfolio is available at no additional charge to Java SE subscribers and Oracle Cloud Infrastructure customers. Oracle Cloud Infrastructure is the first cloud provider to support JDK 26.
The next release, JDK 27, is expected in September 2026.