JEP 375: Pattern Matching für den instanceof-Operator (Zweite Preview)

© Software & Support Media GmbH / Bianca Röder
Im Zuge des Projektes Amber wird unter anderem am sogenannten Pattern Matching für Java gearbeitet. Für den Operator instanceof
wird das Pattern Matching in Java 14 Wirklichkeit werden. Durch Pattern Matching soll, so führt Brian Goetz in JEP 305 – Pattern Matching for „instanceof“ (Preview) aus, die Programmiersprache Java prägnanter und sicherer werden.
Ein sogenanntes Pattern ist im Grunde nichts anderes als eine Kombination eines Prädikats für eine bestimmte Zielstruktur und einer Reihe von dazu passenden Variablen. Gibt es bei der Ausführung der Anwendung Treffer für die Variablen, werden ihnen passende Inhalte zugewiesen. Die „Form“ von Objekten kann so präzise definiert werden, woraufhin diese dann von Statements und Expressions gegen den eigenen Input getestet werden.
Wurde in JEP 305 nur eine Art von Pattern vorgeschlagen (Type Test Pattern), hat die zweite Preview, die als JEP 375 – Pattern Matching for „instanceof“ (Second Preview) für JDK 15 vorgeschlagen wurde, noch das Deconstruction Pattern an Bord. Das Type Test Pattern besteht aus dem oben genannten Prädikat, das einen Typen spezifiziert, und einer einzelnen bindenden Variable. Das Deconstruction Pattern besteht aus einem Prädikat, das einen Record
-Typ spezifiziert, und mehreren bindenden Variablen für die Komponenten des Record
-Typs.
Die Nutzung von Pattern Matching in instanceof
könnte für einen starken Rückgang nötiger Typumwandlungen in Java-Anwendungen sorgen. In zukünftigen Java-Versionen könnte dann Pattern Matching für weitere Sprachkonstrukte wie Switch Expressions kommen.
Weitere Informationen gibt es wie immer auf der Homepage des OpenJDKs.
Thanks for sharing!
Nice Article