經過六個月的開發, 甲骨文宣布發布 新版本 JavaSE 15 作為使用開源OpenJDK項目的參考實現。
JavaSE 15 它被歸類為常規支持版本, 更新將發佈到下一個版本。 Ĵava SE 11應該用作長期支撐腿 (LTS)和更新將一直發佈到2026年。 Java 8 LTS將支持到2020年XNUMX月。 下一個LTS版本計劃於2021年XNUMX月發布。
Java SE 15的主要新功能
在這個新版本中, 提供了對EdDSA RFC 8032簽名的支持功能,建議實施EdDSA 不依賴於硬件平台, 它具有防止副信道攻擊的能力(保證了所有計算的時間不變),並且在性能方面,它以相同的保護級別優於用C語言編寫的現有ECDSA實現。
另一個變化是 密封類和接口的實驗支持 這 它們不能被其他類和接口使用 繼承,擴展或取消部署。
Java SE 15的這個新版本中還強調了 支持不能由字節碼直接使用的隱藏類 其他類。 隱藏類的主要用途是用於在運行時動態生成類並通過反射間接使用它們的框架。
垃圾收集器 ZGC (Z垃圾收集器) 已穩定並公認可用於一般用途。 ZGC在被動模式下運行,以最大程度地減少由於垃圾收集而引起的延遲(使用ZGC時的停機時間不超過10毫秒),並且可以處理大小不等的堆,大小不一從兆字節到幾TB。
垃圾收集器 雪蘭多(Shenandoah)穩定下來並被認為無處不在。 Shenandoah由Red Hat和 在減少垃圾收集過程中暫停時間的算法上脫穎而出 與運行中的Java應用程序並行清理時。
此外,還 對文本塊的支持已穩定 並以以下語言輸入: 文字字符串的新形式 它們使您可以在源代碼中包含多行文本數據,而無需使用轉義符和在塊中保留原始文本格式。
另一方面 舊版DatagramSocket API已重新設計為 舊的java.net.DatagramSocket和java.net.MulticastSocket實現已被易於調試和維護且與Loom項目開發的虛擬線程兼容的現代實現所取代。
如果可能與現有代碼發生兼容性衝突,則不會刪除舊的實現,可以使用jdk.net.usePlainDatagramSocketImpl選項將其激活。
另外, 提出了模式匹配的第二個實驗實現 在“ instanceof”運算符中,您可以立即定義一個局部變量來訪問已驗證的值。
最後,還重點介紹了«record»關鍵字的第二個實驗實現,該實現為類定義提供了一種緊湊的形式,從而避免了顯式定義諸如equals(),hashCode()和toString之類的幾種低級方法的需要。 (),如果數據僅存儲在字段中。
終於 其他突出的變化:
- 提出了外部存儲器訪問API的第二稿
- HotSpot JVM用於減少鎖定開銷的Biased Locking優化技術已被禁用並已棄用。
- RMI激活已聲明的過時機制,它將在以後的版本中刪除。
- 刪除了Java SE 11中不推薦使用的Nashorn JavaScript引擎。
- 刪除了Solaris OS和SPARC處理器(Solaris / SPARC,Solaris / x64和Linux / SPARC)的端口。
Si 您想了解更多 關於這個新版本。 您可以查看詳細信息 在下面的鏈接中。