Java 21 is almost too good to be true: It finalizes virtual threads, sequenced collections, generational ZGC, and the pattern matching basics; evolves the structured concurrency, vector, and foreign function and memory APIs; and freshly previews a simpler launch protocol, string templates, unnamed variables and patterns, and generational Shenandoah. And in this episode, we'll go over everything.
~~~ Chapters ~~~
0:00 ➱ What's happening?!
0:11 ➱ Intro
JEP 452 on key encapsulation: https://openjdk.org/jeps/452
JEP 446 on scoped values: https://openjdk.org/jeps/446
JEP Cafe #16 on scoped values: • Java 20 - From ThreadLocal to ScopedV...
JEP 451 on loading agents: https://openjdk.org/jeps/451
JEP 449 on Windows 32bit x86 port: https://openjdk.org/jeps/449
1:52 ➱ Final - Virtual Threads
JEP 444: https://openjdk.org/jeps/444
Inside Java Newscast #23: • Virtual Thread Deep Dive - Inside Jav...
2:31 ➱ Final - Sequenced Collections
JEP 431: https://openjdk.org/jeps/431
Inside Java Newscast #45: • Java 21's New (Sequenced) Collections...
Inside Java Podcast #31: https://inside.java/2023/04/25/podcas...
3:21 ➱ Final - Generational ZGC
JEP 439: https://openjdk.org/jeps/439
Inside Java Podcast #24: https://inside.java/2022/06/29/podcas...
4:16 ➱ Final - Pattern Matching
JEP 441 on pattern matching in switch: https://openjdk.org/jeps/441
JEP 440 on record patterns: https://openjdk.org/jeps/440
Inside Java Newscast #29: • Data-Oriented Programming - Inside Ja...
5:04 ➱ Continued Evolution
JEP 12 on preview features: https://openjdk.org/jeps/12
article on preview features: https://nipafx.dev/enable-preview-lan...
5:28 ➱ Continued Evolution - Structured Concurrency
JEP 453: https://openjdk.org/jeps/453
JEP Cafe #13: • Java Asynchronous Programming Full Tu...
6:57 ➱ Continued Evolution - Vector API
JEP 448: https://openjdk.org/jeps/448
JEP Cafe #18: • Learn how to write fast Java code wit...
7:09 ➱ Continued Evolution - Foreign Function & Memory API
JEP 442: https://openjdk.org/jeps/442
8:19 ➱ Brand New Previews
8:38 ➱ Brand New Previews - Unnamed Classes And Instance Main
JEP 445: https://openjdk.org/jeps/445
Inside Java Newscast #49: • Script Java Easily in 21 and Beyond -...
9:30 ➱ Brand New Previews - Generational Shenandoah
JEP 404: https://openjdk.org/jeps/404
Proposal to remove on jdk-dev: https://mail.openjdk.org/pipermail/jd...
Proposal to remove in related issue: https://bugs.openjdk.org/browse/JDK-8...
9:50 ➱ Brand New Previews - Unnamed Variables and Patterns
JEP 443: https://openjdk.org/jeps/443
Inside Java Newscast #46: • Getting Rid Of Unused Variables (Fina...
10:39 ➱ Brand New Previews - String Templates
JEP 430: https://openjdk.org/jeps/430
Inside Java Newscast #47: • Interpolating Strings Like a King in ...
11:39 ➱ Outro
~~~ Resources ~~~
◦ Dev.java ➱ https://dev.java
◦ Inside.java ➱ https://inside.java
◦ OpenJDK ➱ https://openjdk.org
◦ Oracle Java ➱ https://www.oracle.com/java/
Tags: #Java #Java21 #JDK21 #OpenJDK #InsideJava