Java 23 / JDK 23:全面上市

banq發表於2024-09-18


Java 23 的參考實現 JDK 23 現已可用。我們釋出了 build 37 作為JDK 23 於 8 月 21 日釋出,自此之後沒有再報告過 P1 錯誤。
因此,Build 37 現在是 GA 版本,可以投入生產使用。

Oracle 提供的 GPL 許可的 OpenJDK 版本可在此處獲取:

  https://jdk.java.net/23

毫無疑問,其他供應商的版本很快就會上市。

此版本包含 12 個 JEP [1],其中包括 ZGC 的
預設模式轉換為代際模式(474):

  •   455:模式中的原始型別、instanceof 和 switch(預覽)
  •   466:Class-File API(第二個預覽)
  •   467:Markdown 文件註釋
  •   469:Vector API(第八孵化器)
  •   473:溪流收集者(第二預覽)
  •   471:棄用 sun.misc.Unsafe 中的記憶體訪問方法並刪除
  •   474:ZGC:預設的分代模式
  •   476:模組匯入宣告(預覽)
  •   477:隱式宣告的類和例項主方法(第三次預覽)
  •   480:結構化併發(第三次預覽)
  •   481:範圍值(第三次預覽)
  •   482:靈活的建構函式主體(第二次預覽)

與往常一樣,此版本還包含數百項較小的增強功能並修復了數千個錯誤。

網友:
1、從新功能方面來看,這不是最有趣的版本,但卻是向前邁出的重要一步,它將使我們更接近 Java 的新時代,即 Java 25

2、看起來唯一完成的功能是 markdown 評論,但顯然還有很多東西正在籌備中。

3、預設採用分代 ZGC

4、此版本標誌著 Valhalla 專案 10 年來沒有釋出任何 JEP。這真是一項偉大的成就!Vector API 已透過其第 8 個孵化器慶祝了這一成就!同時,Go 和 C# 從第一天起就支援值型別。

如果沒有 Valhalla,Optional 就必須Box,這使其效率低於 Kotlin 的可空型別,並損害了 Java 中空安全性的採用。我正在認真考慮加入我團隊中的 K 支持者小組,因為仍然沒有任何跡象表明值型別會進入 JDK 24。

5、Kotlin  已經被 JDK21 模式匹配 + 密封類打敗了,只是有的人還不知道。