JDK 26 favicon
All About JDK 26
JDK 26 • 2026 • Java 26
HTTP/3 Client APIAOT Object Cache (Any GC)G1 throughput+Lazy Constants (2nd preview)Applet API REMOVEDFinal-field warnings

JDK 26 and the shift from JDK 25

HTTP/3 for HTTP Client API (JEP 517). AOT Object Caching with Any GC (JEP 516). G1 throughput improvements (JEP 529). Lazy Constants / Stable Values (2nd preview, JEP 510). Primitive Types in Patterns (4th preview). Applet API fully removed from JDK. Final-field mutation warnings. Unicode 17. 10 JEPs.

Why JDK 26 mattered

The release in context

HTTP/3 for HTTP Client API (JEP 517). AOT Object Caching with Any GC (JEP 516). G1 throughput improvements (JEP 529). Lazy Constants / Stable Values (2nd preview, JEP 510). Primitive Types in Patterns (4th preview). Applet API fully removed from JDK. Final-field mutation warnings. Unicode 17. 10 JEPs.

HTTP/3 Client APIAOT Object Cache (Any GC)G1 throughput+Lazy Constants (2nd preview)Applet API REMOVEDFinal-field warnings
  • HTTP/3 for HTTP Client API (JEP 517). AOT Object Caching with Any GC (JEP 516). G1 throughput improvements (JEP 529). Lazy Constants / Stable Values (2nd preview, JEP 510). Primitive Types in Patterns (4th preview). Applet API fully removed from JDK. Final-field mutation warnings. Unicode 17. 10 JEPs.
  • Key release highlights included HTTP/3 Client API, AOT Object Cache (Any GC), G1 throughput+, Lazy Constants (2nd preview).
  • Compared with JDK 25, the most visible shifts included HTTP/3 Client (JEP 517), Final-field mutation warnings, Unicode 17.0 support.
  • HTTP/3 arrives in Java. Applet API fully removed — ending a journey that started in JDK 1.0 (1996). Project Valhalla imminent.
  • This is a future-facing milestone in JavaOmnibus, useful for showing where the cadence continues beyond today's most common baselines.
Platform stack

JDK 26 architecture preview

This larger diagram expands the smaller JDK badge into a layered platform view showing how the development kit, runtime, virtual machine, APIs, tools, and supporting subsystems fit together for this release.

Previous-version diff

What changed from JDK 25 to JDK 26

This is a future-facing milestone in JavaOmnibus, useful for showing where the cadence continues beyond today's most common baselines.

New Features / Modern APIs

  • HTTP/3 Client appeared in JDK 26, adding a new capability in new features / modern apis.
  • Lazy Constants (2nd preview) was updated in JDK 26, showing active movement in new features / modern apis.
  • Primitive Types in Patterns (4th preview) was updated in JDK 26, showing active movement in new features / modern apis.
  • Scoped Values (preview) was updated in JDK 26, showing active movement in new features / modern apis.

Java Language Features

  • Final-field mutation warnings appeared in JDK 26, adding a new capability in java language features.
  • Unicode 17.0 support appeared in JDK 26, adding a new capability in java language features.
  • Primitive Types in Patterns (4th preview) was updated in JDK 26, showing active movement in java language features.
  • Flexible Constructor Bodies appeared in JDK 26, adding a new capability in java language features.

Other Base Libraries

  • HTTP/3 Client API appeared in JDK 26, adding a new capability in other base libraries.
  • AOT Object Caching (Any GC) was updated in JDK 26, showing active movement in other base libraries.
  • Lazy Constants / Stable Values (2nd preview) was updated in JDK 26, showing active movement in other base libraries.
  • AOT Class Loading (enhanced) moved from active change in JDK 25 into a more stable baseline by JDK 26.
Matrix slice

Quick comparison table: JDK 25 vs JDK 26

This side-by-side view turns the source evolution matrix into a faster way to see which language, tooling, runtime, and platform layers moved between these two releases.

Area Component JDK 25 JDK 26 Why it stands out
Integration Libraries HTTP/3 Client (JEP 517) Not present NEW HTTP/3 Client (JEP 517) appeared in JDK 26, adding a new capability in integration libraries.
Java Language Features Final-field mutation warnings Not present NEW Final-field mutation warnings appeared in JDK 26, adding a new capability in java language features.
Java Language Features Unicode 17.0 support Not present NEW Unicode 17.0 support appeared in JDK 26, adding a new capability in java language features.
New Features / Modern APIs HTTP/3 Client Not present NEW HTTP/3 Client appeared in JDK 26, adding a new capability in new features / modern apis.
Other Base Libraries HTTP/3 Client API Not present NEW HTTP/3 Client API appeared in JDK 26, adding a new capability in other base libraries.
Deployment Applet API (REMOVED) Not present Removed Applet API (REMOVED) no longer carried the same role in JDK 26, marking a meaningful platform cleanup.
Integration Libraries PEM Encodings (2nd preview) Not present UPD PEM Encodings (2nd preview) was updated in JDK 26, showing active movement in integration libraries.
JVM: Class Loader Subsystem AOT Object Cache (Any GC) Not present UPD AOT Object Cache (Any GC) was updated in JDK 26, showing active movement in jvm: class loader subsystem.
JVM: Execution Engine & GC G1 GC (throughput improved) Not present UPD G1 GC (throughput improved) was updated in JDK 26, showing active movement in jvm: execution engine & gc.
JVM: Execution Engine & GC JIT (C1+C2, G1 throughput+) Not present UPD JIT (C1+C2, G1 throughput+) was updated in JDK 26, showing active movement in jvm: execution engine & gc.
JVM: Memory Management AOT Object Cache (Any GC) Not present UPD AOT Object Cache (Any GC) was updated in JDK 26, showing active movement in jvm: memory management.
New Features / Modern APIs Lazy Constants (2nd preview) Not present UPD Lazy Constants (2nd preview) was updated in JDK 26, showing active movement in new features / modern apis.
Other Base Libraries AOT Object Caching (Any GC) Not present UPD AOT Object Caching (Any GC) was updated in JDK 26, showing active movement in other base libraries.
JVM: Class Loader Subsystem AOT Class Data Cache (enhanced) UPD Present AOT Class Data Cache (enhanced) moved from active change in JDK 25 into a more stable baseline by JDK 26.
Structured comparison

Grouped reading of the release shift

HTTP/3 arrives in Java. Applet API fully removed — ending a journey that started in JDK 1.0 (1996). Project Valhalla imminent.

New Features / Modern APIs
New in JDK 26
  • HTTP/3 Client
  • Stable Values (preview)
Updated by JDK 26
  • Lazy Constants (2nd preview)
  • Primitive Types in Patterns (4th preview)
  • Scoped Values (preview)
  • Structured Concurrency (preview)
  • Module Imports (FINAL)
Java Language Features
New in JDK 26
  • Final-field mutation warnings
  • Unicode 17.0 support
  • Flexible Constructor Bodies
  • Module Import
Updated by JDK 26
  • Primitive Types in Patterns (4th preview)
  • Flexible Constructor Bodies (FINAL)
  • Module Import Declarations (FINAL)
  • Primitive Types in Patterns (FINAL)
  • Simple Source Programs (FINAL)
Other Base Libraries
New in JDK 26
  • HTTP/3 Client API
  • Stable Values (preview)
Updated by JDK 26
  • AOT Object Caching (Any GC)
  • Lazy Constants / Stable Values (2nd preview)
  • AOT Class Loading (enhanced)
Historical platform profile

Release narrative

HTTP/3 for HTTP Client API (JEP 517). AOT Object Caching with Any GC (JEP 516). G1 throughput improvements (JEP 529). Lazy Constants / Stable Values (2nd preview, JEP 510). Primitive Types in Patterns (4th preview). Applet API fully removed from JDK. Final-field mutation warnings. Unicode 17. 10 JEPs.

HTTP/3 arrives in Java. Applet API fully removed — ending a journey that started in JDK 1.0 (1996). Project Valhalla imminent.

HTTP/3 Client APIAOT Object Cache (Any GC)G1 throughput+Lazy Constants (2nd preview)Applet API REMOVEDFinal-field warnings
Why it mattered later

Why JDK 26 matters in the JDK timeline

This milestone is useful for forward planning because it sits near the current or upcoming edge of the JDK timeline.

  • JDK 26 sits in the timeline as a frontier release, which shaped how teams evaluated and adopted it.
  • It is commonly remembered for HTTP/3 Client API, AOT Object Cache (Any GC), G1 throughput+.
  • Compared with JDK 25, it gives a clearer picture of how the JDK platform was evolving release by release.
  • HTTP/3 arrives in Java. Applet API fully removed — ending a journey that started in JDK 1.0 (1996). Project Valhalla imminent.
Related pages

Continue through the platform story