Java veröffentlichte am 15. September 2026 gemäß dem halbjährlichen Veröffentlichungszyklus Version 27. Sie umfasst neun JEP-Initiativen, von denen vier stabil geworden sind, während sich vier weitere Funktionen weiterhin in der Vorschauphase befinden und eine API in der Inkubationsphase bleibt. JetBrains zufolge unterstützt IntelliJ IDEA Java 27 ab dem ersten Tag, einschließlich der stabilen Funktionen und der Vorschaufunktionen dieser Version.
Die wichtigsten stabil gewordenen Funktionen
Die wichtigste betriebliche Änderung ist die standardmäßige Verwendung des Garbage Collectors G1 in allen HotSpot-JVM-Umgebungen. In früheren Versionen wechselten Geräte mit einem Prozessor oder weniger als 1.792 Megabyte Arbeitsspeicher zu Serial GC. Nach den an G1 vorgenommenen Verbesserungen ist er nun auch in diesen Umgebungen die Standardauswahl. Bei Bedarf kann Serial GC weiterhin manuell mit der Option -XX:+UseSerialGC ausgewählt werden.
Java 27 fügt außerdem einen hybriden postquantenresistenten Schlüsselaustausch in TLS 1.3 hinzu. Diese Änderung zielt auf das Muster „Jetzt sammeln, später entschlüsseln“ ab: Ein Angreifer kann derzeit verschlüsselte Daten aufzeichnen und versuchen, sie künftig zu entschlüsseln, sobald ausreichende Quantenkapazitäten verfügbar sind.
Auch komprimierte Objekt-Header sind nun die Standardeinstellung in der HotSpot-JVM. Dadurch wird die Header-Größe auf 64-Bit-Architekturen von 96 auf 64 Bit reduziert. Dies kann den Speicherverbrauch senken, die Bereitstellungsdichte erhöhen und die Datenlokalität verbessern, insbesondere in Anwendungen, die eine große Anzahl von Objekten erzeugen. JetBrains wies darauf hin, dass seine Entwicklungsumgebungen bei Verwendung dieser Funktion konsistente Speichereinsparungen festgestellt haben.
Die vierte stabile Verbesserung erweitert JDK Flight Recorder um die Möglichkeit, Befehlszeilenargumente sowie die Anfangswerte von Umgebungsvariablen und Systemeigenschaften zu bereinigen, bevor die Aufzeichnung den Prozess verlässt, um das Risiko des Austritts sensibler Informationen zu verringern.
Vorschau- und Inkubationsfunktionen
Java 27 entwickelt Lazy Constants weiter, die erst bei Bedarf ausgewertet werden, ebenso wie Muster für primitive Typen in instanceof und switch, strukturierte Nebenläufigkeit und PEM-Kodierungen für kryptografische Objekte. Diese Funktionen sind nicht endgültig und können sich vor ihrer Übernahme noch ändern. Daher erlaubt IntelliJ IDEA ihre Verwendung nur mit der aktuellen JDK-Version, wenn die Sprachstufe 27 (Preview) aktiviert ist.
Die Vector API bleibt in einem Inkubatormodul. Sie ermöglicht die Ausdrucksform von Vektoroperationen, die in geeignete Anweisungen für unterstützte Prozessoren übersetzt werden können. Für ihre Verwendung muss das Modul ausdrücklich mit der Option --add-modules jdk.incubator.vector hinzugefügt werden. Dies bestätigt, dass sie noch nicht für einen stabilen Produktionseinsatz vorgesehen ist.
Was ändert sich praktisch für Entwickler?
JDK 27 kann über die Einstellungen von IntelliJ IDEA heruntergeladen oder mit einer bereits installierten Entwicklungsumgebung verknüpft werden. Außerdem kann das Programm die Dateien .sdkmanrc und .tool-versions lesen, um die JDK-Version bei der Verwendung von SDKMAN! oder asdf automatisch festzulegen. Die Unterstützung umfasst auch die Kennzeichnung von Vorschaufunktionen im Editor, wodurch Teams erkennen können, welche Stellen auf veränderlichen Schnittstellen beruhen.
Java 27 enthält außerdem eine Korrektur für eine Verlangsamung der Navigation beim Debugging. JetBrains hat diese Korrektur in JetBrains Runtime 25 übernommen. Teams, die noch nicht zu Java 27 wechseln möchten, können daher möglicherweise über JBR 25 oder eine JDK-25-Version mit dieser Korrektur von der Verbesserung profitieren.
Java 27 ist keine Version mit langfristigem Support. Die stabilen Änderungen betreffen jedoch Speicherverwaltung, die Sicherheit von Verbindungen und die Integrität von Aufzeichnungsdaten und sind nicht lediglich sprachliche Ergänzungen. Vorschau- und Inkubationsfunktionen bleiben dagegen ungeeignet für endgültige Produktionsentscheidungen. Außerdem macht die standardmäßige Verwendung von G1 keine Tests von ressourcenbeschränkten Anwendungen überflüssig, die von Serial GC profitieren könnten.