Veröffentlicht am: Mar 22, 2022
Amazon Corretto 18 ist jetzt allgemein verfügbar. Diese Version unterstützt das neueste Java-Feature-OpenJDK 18 und ist unter Linux, Windows und macOS verfügbar. Sie können Corretto 18 über die Download-Seite herunterladen. Amazon Corretto ist eine kostenfreie, plattformübergreifende, produktionsbereite Multiplattform-Distribution von OpenJDK. Corretto wird von Amazon unter einer Open-Source-Lizenz vertrieben.
OpenJDK 18 bietet eine neue Funktion zur Auflösung von Internetadressen, einen einfachen Webserver, eine aktualisierte Vektor-API, ein neues @snippet-Tag für JavaDoc, eine neue Implementierung von Core Reflection, eine Änderung auf UTF-8 als Standardzeichensatz (charset) der Standard-Java-APIs, eine zweite Iteration der Fremdspeicher-API, Fortschritte beim Mustervergleich für Switch-Anweisungen und die Verwerfung der Finalisierung.
- Das neue Service Provider Interface (SPI) ermöglicht es Entwicklern, einen anderen als den in die JVM integrierten Standard-Resolver für Internetadressen anzugeben. Der Hauptvorteil besteht darin, dass ein Blockierungsproblem im Zusammenhang mit einem Betriebssystemaufruf, der derzeit bei der Internet-Adressumsetzung auftritt, entschärft wird. Dies ist insbesondere für Anwendungen hilfreich, die virtuelle Threads verwenden.
- Der in OpenJDK 18 enthaltene einfache Webserver stellt ein Befehlszeilentool zur Verfügung, um statische Dateien bereitzustellen. Entwickler können es für Prototyping, Ad-hoc-Codierung und Tests verwenden.
- Eine Vektor-API wurde ursprünglich in OpenJDK 16 eingeführt. Sie wurde in OpenJDK 17 verbessert und in OpenJDK 18 weiter verbessert. Die neueste Version enthält Unterstützung für die ARM Scalar Vector Extension (SVE) Platform und verbessert die Leistung von Vektoroperationen.
- Eine neue Funktion, die es dem Entwickler ermöglicht, Quellcodebeispiele in JavaDocs hinzuzufügen, wurde hinzugefügt. Durch die Verwendung der Annotation @snippet kann der Entwickler Codefragmente zu seiner Dokumentation hinzufügen.
- OpenJDK 18 enthält ein Update für die Art und Weise, wie Reflektion implementiert wird. Die Änderung verschiebt java.lang.reflect.Method, Constructor und Field zu den java.lang.invoke-Methoden-Handles, sodass Methoden-Handles die zugrunde liegende Art und Weise der Reflektion darstellen.
- OpenJDK 18 verwendet UTF-8 als Standardzeichensatz der Standard-Java-APIs. Dadurch können APIs vorhersehbarer arbeiten, wenn das optionale charset-Attribut nicht an APIs übergeben wird.
- Mit OpenJDK 18 wurde eine neue API eingeführt, die es Entwicklern ermöglicht, mit Code und Daten außerhalb der JVM ohne die Verwendung von Java Native Interface (JNI) zu interagieren. Dies ist eine Fortsetzung einer in OpenJDK 17 eingeführten Inkubations-API und fügt der vorherigen Iteration eine Reihe von Verbesserungen hinzu.
- Eine zweite Vorschau auf Pattern Matching für Switch-Anweisungen ist in OpenJDK 18 enthalten. Der erste Start dieser Funktion war in OpenJDK 17 enthalten. Mit OpenJDK 18 wurde sie verbessert, indem Muster in Case-Labels angezeigt werden können, was die Einführung zuvor neuer Funktionen ermöglicht und ein vom Entwickler definiertes Nichtigkeitsverhalten ermöglicht.
- Die Finalisierung wird in einer zukünftigen JDK-Version entfernt, und mit OpenJDK 18 ist die Funktion veraltet.
Eine Liste dieser Funktionen mit weiteren Details finden Sie hier.