DEV Community

Foojay.io, the Friends Of OpenJDK!

Java 21 Has Arrived!

Since 2018, we get a new version of Java every 6 months. And version 21, released this month, will be a long-term support version that can be used for many years. It also brings a lot of new features and improvements in both the language and the runtime. Actually, there are so many that we’ll probably not get all of them discussed in this podcast! Let’s see what our experts find the most important facts we need to know about Java 21.

Guests

Mohamed Taman

Piotr Przybyl

Simon Ritter

Podcast

Host: Frank Delporte

Content

00:00 Intro and introduction of the guests
01:51 Excitement about the OpenJDK 21 release
04:18 What is Long Term Support?
https://twitter.com/nipafx/status/1676908785313492992
06:07 Every OpenJDK release is stable and production-ready
https://www.linkedin.com/posts/mohamedtaman_aws-activity-7101961717521264640-F8jh
11:44 Next LTS in two years
12:06 Should you wait a bit before using 21?
13:07 About JEPs, new versus incubator and preview
https://openjdk.org/projects/jdk/21/
17:13 JEP 444: Virtual Threads
https://softwaregarden.dev/en/posts/new-java/loom/dont-look-at-virtual-threads/
22:30 JEP 430: String Templates
https://blogs.oracle.com/javamagazine/post/java-21-sneak-peek
26:05 JEP 440: Record Patterns + JEP 441 Pattern Matching for switch
27:11 JEP 442: Foreign Function & Memory API (Third Preview)
29:05 Energy efficiency of Java
https://thenewstack.io/which-programming-languages-use-the-least-electricity/
30:55 How Java evolves by inspiration of other languages
33:56 Difference between OpenJDK projects and JEPs
35:06 JEP 445: Unnamed Classes and Instance Main Methods (Preview)
40:55 Dummies book “OpenJDK Migration”
https://foojay.io/today/book-announcement-openjdk-migration-guide-for-dummies/
42:28 What will Java 22 bring?
43:27 JEP 443: Unnamed Patterns and Variables (Preview)
45:18 JEP 439: Generational ZGC
https://foojay.io/today/what-should-i-know-about-garbage-collection-as-a-java-developer/
49:33 Performance improvements by using newer runtimes
51:23 JEP 451: Prepare to Disallow the Dynamic Loading of Agents
52:37 Looking back at the 6-month release cycle introduction
55:00 Outro

Episode source