From Java 21 to 25: The Features That Changed Everything (#90)

February 14
1h 3m

View Transcript

Episode Description

Every six months, we get a new version of Java. Java 26 is just around the corner and will be released soon. But most companies stick to LTS (Long-Term Support) versions, which are maintained and receive security updates for many more years. Versions 8, 11, 17, 21, and 25 are such LTS versions. Hopefully, most of your systems are already on the latest versions and you are not stuck on 8 or earlier. As a reminder, 8 was released in 2014, so much has changed since then.If you are doubting moving from 21 to 25, or even from an earlier version to the latest LTS, this podcast is for you! Together with Jakob Jenkov, we discussed the most important changes, and this episode includes a few quotes from interviews recorded at conferences last year.

Guests

Content

00:00 Introduction of topic and guest

03:30 Bugfixes and performance improvements "under the hoods"

  • Quote Jonathan Vila

08:00 Java as a scripting language

  • Quote Ryan Svihla
  • Compact Source Files and Instance Main methods
  • Launch Multi-File Source-Code Programs
  • https://www.jbang.dev/
  • Quote Mary Grygleski

15:03 GC Improvements

19:44 Project Loom: Virtual Threads and Structured Concurrency

  • Quote Anton Arhipov

29:44 How Java evolves

32:15 Project Leyden: Ahead-of-time features

  • Ahead-of-Time Command-Line Ergonomics
  • Ahead-of-Time Method Profiling
  • Ahead-of-Time Class Loading & Linking

39:15 Project Babylon

43:25 Class-File API

49:20 Foreign Function and Memory API

54:26 Vector API

  • Quote Jonathan Ellis + Ryan Svihla

59:59 Removal of String templates

01:00:26 Taking a look into the JVM of the future

01:03:08 Conclusion


See all episodes