Java 21: Version mit LTS, String-Templates und Virtual Threads vorgestellt

Mit Java21 ist die nächste Version erschienen, die für Hersteller einen verlängerten Support bietet. Neuerungen gibt es bei String Templates und Virtual Threads

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 11 Kommentare lesen
Lesezeit: 30 Min.
Von
  • Falk Sippach
Inhaltsverzeichnis

Das OpenJDK 21 ist eines der wichtigsten Releases seit vielen Jahren: Mit fünfzehn umgesetzten JEPs (JDK Enhancement Proposals) gibt es so viele Neuerungen wie lange nicht. Neben den schon seit Längerem in Arbeit befindlichen Features wie Pattern Matching, Virtual Threads, Vector API und Foreign Function & Memory API haben es auch einige neue Ideen ins OpenJDK geschafft. Dazu zählen String Templates, Unnamed Classes and Instance Main Methods (beide zunächst als Preview) und die Sequenced Collections.

Pattern Matching wird bereits seit einigen Jahren mit Project Amber nach und nach in Java eingeführt. Dazu waren Änderungen in der Sprache selbst notwendig. Los ging es mit den Switch Expressions im JDK 12, ab Version 14 folgten die Type Patterns (Pattern Matching for instanceof) und Records. Sealed Classes führte das OpenJDK-Team in JDK 15 ein. In JDK 17 kam erstmals Pattern Matching for switch als Preview hinzu, das nun in Java 21 finalisiert wurde und damit produktiv einsetzbar ist.

Ebenfalls final sind die im OpenJDK 19 eingeführten Deconstruction (Record) Patterns. In Zukunft sind weitere Mustertypen wie Array-, Map-, POJO- oder Factory-Method-Patterns zu erwarten. In der aktuellen Version hat das OpenJDK-Team mit dem JEP 443 Unnamed Patterns and Variables (Preview) ein Platzhaltermuster eingeführt, wenn auch zunächst noch als Preview.