<p>Welcome to another episode of the Foojay Podcast! In this episode, we&#39;re talking about Java 26, released on March 17 in the year 26. Again, right on schedule with Java&#39;s six-month release cadence.</p><p>Now, Java 26 is not a Long Term Support (LTS) release; that was Java 25. But don&#39;t let that fool you into thinking there&#39;s nothing interesting here. This release brings ten JDK Enhancement Proposals (JEPs). They cover everything from performance improvements to long-overdue cleanups. Of those ten JEPS, five are new features, and we also get five preview/incubator features.</p><p><strong>Guests</strong></p><p>Simon Ritter</p><ul><li><a href="https://www.linkedin.com/in/siritter/" target="_blank">https://www.linkedin.com/in/siritter/</a></li></ul><p>Loïc Mathieu</p><ul><li><a href="https://www.linkedin.com/in/lo%C3%AFc-mathieu-475b144/" target="_blank">https://www.linkedin.com/in/lo%C3%AFc-mathieu-475b144/</a></li></ul><p><strong>Content</strong></p><p>00:00 Introduction of topic and guests</p><p>01:35 Differences between Long and Short Term Support</p><p>05:10 Which Java versions are used by companies</p><ul><li><a href="https://foojay.io/today/foojay-podcast-90-highlights-of-the-java-features-between-lts-21-and-25/">https://foojay.io/today/foojay-podcast-90-highlights-of-the-java-features-between-lts-21-and-25/</a></li></ul><p>07:54 Internal changes and improvements in release 26, highlighting UUIDv7 support</p><ul><li><a href="https://foojay.io/today/java-26-whats-new/">https://foojay.io/today/java-26-whats-new/</a></li></ul><p>12:02 <a href="https://openjdk.org/jeps/500" target="_blank">JEP 500</a>: Prepare to Make Final Mean Final</p><p>13:24 <a href="https://openjdk.org/jeps/526" target="_blank">JEP 526</a>: Lazy Constants (Second Preview)</p><p>16:12 <a href="https://openjdk.org/jeps/517" target="_blank">JEP 517</a>: HTTP/3 for the HTTP Client API</p><ul><li><a href="https://en.wikipedia.org/wiki/HTTP/3" target="_blank">https://en.wikipedia.org/wiki/HTTP/3</a></li><li><a href="https://en.wikipedia.org/wiki/QUIC" target="_blank">https://en.wikipedia.org/wiki/QUIC</a></li></ul><p>18:48 <a href="https://openjdk.org/jeps/504" target="_blank">JEP 504</a>: Remove the Applet API</p><p>20:52 <a href="https://openjdk.org/jeps/524" target="_blank">JEP 524</a>: PEM Encodings of Cryptographic Objects (Second Preview)</p><p>21:59 <a href="https://openjdk.org/jeps/516" target="_blank">JEP 516</a>: Ahead-of-Time Object Caching with Any GC</p><ul><li><a href="https://openjdk.org/projects/leyden/" target="_blank">https://openjdk.org/projects/leyden/</a></li><li><a href="https://docs.azul.com/prime/analyzing-tuning-warmup" target="_blank">https://docs.azul.com/prime/analyzing-tuning-warmup</a></li><li><a href="https://foojay.io/today/faster-java-warmup-crac-versus-readynow/">https://foojay.io/today/faster-java-warmup-crac-versus-readynow/</a></li></ul><p>25:30 <a href="https://openjdk.org/jeps/522" target="_blank">JEP 522</a>: G1 GC: Improve Throughput by Reducing Synchronization</p><ul><li><a href="https://www.youtube.com/watch?v=Jh79ojcror0" target="_blank">Trash Talk - Exploring the JVM memory management by Gerrit Grunwald</a></li></ul><p>28:04 <a href="https://openjdk.org/jeps/525" target="_blank">JEP 525</a>: Structured Concurrency (Sixth Preview)</p><ul><li><a href="https://openjdk.org/projects/loom/" target="_blank">https://openjdk.org/projects/loom/</a></li></ul><p>31:09 <a href="https://openjdk.org/jeps/529" target="_blank">JEP 529</a>: Vector API (Eleventh Incubator)</p><ul><li><a href="https://openjdk.org/projects/panama/" target="_blank">https://openjdk.org/projects/panama/</a></li><li><a href="https://openjdk.org/projects/valhalla/" target="_blank">https://openjdk.org/projects/valhalla/</a></li></ul><p>34:59 When do JEPs get selected to be included in a release</p><ul><li><a href="https://openjdk.org/projects/jdk/26/" target="_blank">https://openjdk.org/projects/jdk/26/</a></li><li><a href="https://openjdk.org/projects/jdk/27/" target="_blank">https://openjdk.org/projects/jdk/27/</a></li></ul><p>38:03 <a href="https://openjdk.org/jeps/530" target="_blank">JEP 530</a>: Primitive Types in Patterns, instanceof, and switch (Fourth Preview)</p><ul><li><a href="https://openjdk.org/projects/amber/" target="_blank">https://openjdk.org/projects/amber/</a></li><li><a href="https://www.youtube.com/watch?v=vZ7P2CigLLQ" target="_blank">Java Puzzlers talk by Simon</a></li></ul><p>42:14 Do we need &quot;Carrier Classes&quot;?</p><ul><li><a href="https://mail.openjdk.org/pipermail/amber-spec-experts/2026-January/004307.html" target="_blank">Amber mailing list: Data Oriented Programming, Beyond Records</a></li><li><a href="https://www.linkedin.com/pulse/java-reaches-gpu-records-fall-off-cliff-gatherers-prove-skowro%C5%84ski-rnqlf/" target="_blank">JVM Weekly newsletter by Artur Skowroński</a></li></ul><p>44:38 What changes does Java need for the AI world?</p><ul><li><a href="https://openjdk.org/jeps/8361105" target="_blank">JEP DRAFT 8361105</a>: Code reflection (Incubator)</li><li><a href="https://openjdk.org/projects/babylon/" target="_blank">https://openjdk.org/projects/babylon/</a></li><li><a href="https://www.tornadovm.org/" target="_blank">https://www.tornadovm.org/</a></li></ul><p>47:53 Remarkable numeric facts about releases</p><p>48:30 Conclusion</p><p><br></p>

Foojay.io | Friends of OpenJDK and Java Programming

Foojay.io | Java and Programming Community

Java 26 Is Here: What's New, What's Gone, and Why It Matters in 2026 (#92)

MAR 14, 202649 MIN
Foojay.io | Friends of OpenJDK and Java Programming

Java 26 Is Here: What's New, What's Gone, and Why It Matters in 2026 (#92)

MAR 14, 202649 MIN

Description

<p>Welcome to another episode of the Foojay Podcast! In this episode, we&#39;re talking about Java 26, released on March 17 in the year 26. Again, right on schedule with Java&#39;s six-month release cadence.</p><p>Now, Java 26 is not a Long Term Support (LTS) release; that was Java 25. But don&#39;t let that fool you into thinking there&#39;s nothing interesting here. This release brings ten JDK Enhancement Proposals (JEPs). They cover everything from performance improvements to long-overdue cleanups. Of those ten JEPS, five are new features, and we also get five preview/incubator features.</p><p><strong>Guests</strong></p><p>Simon Ritter</p><ul><li><a href="https://www.linkedin.com/in/siritter/" target="_blank">https://www.linkedin.com/in/siritter/</a></li></ul><p>Loïc Mathieu</p><ul><li><a href="https://www.linkedin.com/in/lo%C3%AFc-mathieu-475b144/" target="_blank">https://www.linkedin.com/in/lo%C3%AFc-mathieu-475b144/</a></li></ul><p><strong>Content</strong></p><p>00:00 Introduction of topic and guests</p><p>01:35 Differences between Long and Short Term Support</p><p>05:10 Which Java versions are used by companies</p><ul><li><a href="https://foojay.io/today/foojay-podcast-90-highlights-of-the-java-features-between-lts-21-and-25/">https://foojay.io/today/foojay-podcast-90-highlights-of-the-java-features-between-lts-21-and-25/</a></li></ul><p>07:54 Internal changes and improvements in release 26, highlighting UUIDv7 support</p><ul><li><a href="https://foojay.io/today/java-26-whats-new/">https://foojay.io/today/java-26-whats-new/</a></li></ul><p>12:02 <a href="https://openjdk.org/jeps/500" target="_blank">JEP 500</a>: Prepare to Make Final Mean Final</p><p>13:24 <a href="https://openjdk.org/jeps/526" target="_blank">JEP 526</a>: Lazy Constants (Second Preview)</p><p>16:12 <a href="https://openjdk.org/jeps/517" target="_blank">JEP 517</a>: HTTP/3 for the HTTP Client API</p><ul><li><a href="https://en.wikipedia.org/wiki/HTTP/3" target="_blank">https://en.wikipedia.org/wiki/HTTP/3</a></li><li><a href="https://en.wikipedia.org/wiki/QUIC" target="_blank">https://en.wikipedia.org/wiki/QUIC</a></li></ul><p>18:48 <a href="https://openjdk.org/jeps/504" target="_blank">JEP 504</a>: Remove the Applet API</p><p>20:52 <a href="https://openjdk.org/jeps/524" target="_blank">JEP 524</a>: PEM Encodings of Cryptographic Objects (Second Preview)</p><p>21:59 <a href="https://openjdk.org/jeps/516" target="_blank">JEP 516</a>: Ahead-of-Time Object Caching with Any GC</p><ul><li><a href="https://openjdk.org/projects/leyden/" target="_blank">https://openjdk.org/projects/leyden/</a></li><li><a href="https://docs.azul.com/prime/analyzing-tuning-warmup" target="_blank">https://docs.azul.com/prime/analyzing-tuning-warmup</a></li><li><a href="https://foojay.io/today/faster-java-warmup-crac-versus-readynow/">https://foojay.io/today/faster-java-warmup-crac-versus-readynow/</a></li></ul><p>25:30 <a href="https://openjdk.org/jeps/522" target="_blank">JEP 522</a>: G1 GC: Improve Throughput by Reducing Synchronization</p><ul><li><a href="https://www.youtube.com/watch?v=Jh79ojcror0" target="_blank">Trash Talk - Exploring the JVM memory management by Gerrit Grunwald</a></li></ul><p>28:04 <a href="https://openjdk.org/jeps/525" target="_blank">JEP 525</a>: Structured Concurrency (Sixth Preview)</p><ul><li><a href="https://openjdk.org/projects/loom/" target="_blank">https://openjdk.org/projects/loom/</a></li></ul><p>31:09 <a href="https://openjdk.org/jeps/529" target="_blank">JEP 529</a>: Vector API (Eleventh Incubator)</p><ul><li><a href="https://openjdk.org/projects/panama/" target="_blank">https://openjdk.org/projects/panama/</a></li><li><a href="https://openjdk.org/projects/valhalla/" target="_blank">https://openjdk.org/projects/valhalla/</a></li></ul><p>34:59 When do JEPs get selected to be included in a release</p><ul><li><a href="https://openjdk.org/projects/jdk/26/" target="_blank">https://openjdk.org/projects/jdk/26/</a></li><li><a href="https://openjdk.org/projects/jdk/27/" target="_blank">https://openjdk.org/projects/jdk/27/</a></li></ul><p>38:03 <a href="https://openjdk.org/jeps/530" target="_blank">JEP 530</a>: Primitive Types in Patterns, instanceof, and switch (Fourth Preview)</p><ul><li><a href="https://openjdk.org/projects/amber/" target="_blank">https://openjdk.org/projects/amber/</a></li><li><a href="https://www.youtube.com/watch?v=vZ7P2CigLLQ" target="_blank">Java Puzzlers talk by Simon</a></li></ul><p>42:14 Do we need &quot;Carrier Classes&quot;?</p><ul><li><a href="https://mail.openjdk.org/pipermail/amber-spec-experts/2026-January/004307.html" target="_blank">Amber mailing list: Data Oriented Programming, Beyond Records</a></li><li><a href="https://www.linkedin.com/pulse/java-reaches-gpu-records-fall-off-cliff-gatherers-prove-skowro%C5%84ski-rnqlf/" target="_blank">JVM Weekly newsletter by Artur Skowroński</a></li></ul><p>44:38 What changes does Java need for the AI world?</p><ul><li><a href="https://openjdk.org/jeps/8361105" target="_blank">JEP DRAFT 8361105</a>: Code reflection (Incubator)</li><li><a href="https://openjdk.org/projects/babylon/" target="_blank">https://openjdk.org/projects/babylon/</a></li><li><a href="https://www.tornadovm.org/" target="_blank">https://www.tornadovm.org/</a></li></ul><p>47:53 Remarkable numeric facts about releases</p><p>48:30 Conclusion</p><p><br></p>