JDK 18 / Java 18 GA 发布
文?| Travis
出品 | OSC開源社區(qū)(ID:oschina2013)
JDK 18 / Java 18 GA 發(fā)布。JDK 18 是一個(gè)短期維護(hù)版本,將獲得六個(gè)月的支持。盡管如此,但它仍然可用于生產(chǎn)環(huán)境中。根據(jù)開發(fā)計(jì)劃,JDK 19 將于今年 9 月發(fā)布,而下一個(gè) LTS 版本 JDK 21 將于 2023 年 9 月發(fā)布。
JDK 18 共包括 9 個(gè) JEP,以及數(shù)百個(gè)較小的增強(qiáng)功能和一千多個(gè)錯(cuò)誤修復(fù)。
400: | UTF-8 by Default |
408: | Simple Web Server |
413: | Code Snippets in Java API Documentation |
416: | Reimplement Core Reflection with Method Handles |
417: | Vector API (Third Incubator) |
418: | Internet-Address Resolution SPI |
419: | Foreign Function & Memory API (Second Incubator) |
420: | Pattern Matching for switch (Second Preview) |
421: | Deprecate Finalization for Removal |
默認(rèn)編碼為 UTF-8
將 UTF-8 指定為標(biāo)準(zhǔn) Java API 的默認(rèn)字符集。通過(guò)此更改,依賴于默認(rèn)字符集的 API 將在所有實(shí)現(xiàn)、操作系統(tǒng)、語(yǔ)言環(huán)境和配置中保持一致。
簡(jiǎn)易 HTTP 服務(wù)器
提供命令行工具來(lái)啟動(dòng)一個(gè)僅提供靜態(tài)文件的最小 Web 服務(wù)器。沒(méi)有可用的 CGI 或類似 servlet 的功能。該工具可用于原型設(shè)計(jì)、臨時(shí)編碼和測(cè)試目的,尤其是在教育環(huán)境中。
Java API 文檔中的代碼片段
為 JavaDoc 的 Standard Doclet 引入一個(gè) @snippet 標(biāo)簽,以簡(jiǎn)化 API 文檔中的示例源代碼。
用方法句柄(Method Handles)重新實(shí)現(xiàn) Java 核心反射
在 java.lang.invoke 方法句柄的基礎(chǔ)上重新實(shí)現(xiàn) java.lang.reflect.Method、Constructor 和 Field。讓方法句柄成為反射的底層機(jī)制將減少 java.lang.reflect 和 java.lang.invoke API 的維護(hù)和開發(fā)成本。
Vector API (第三次進(jìn)行孵化)
引入一個(gè) API 來(lái)表達(dá)在運(yùn)行時(shí)能夠可靠編譯的向量計(jì)算,在支持的 CPU 架構(gòu)上優(yōu)化向量指令,從而實(shí)現(xiàn)優(yōu)于標(biāo)量計(jì)算的性能。
互聯(lián)網(wǎng)地址解析 SPI
定義一個(gè)用于主機(jī)名稱和地址解析的服務(wù)供給接口(SPI),以便 java.net.InetAddress 可以使用平臺(tái)內(nèi)置解析器以外的解析器。
外部函數(shù)和內(nèi)存 API(第二次進(jìn)行孵化)
引入一個(gè) API,通過(guò)它,Java 程序可以與 Java 運(yùn)行時(shí)之外的代碼和數(shù)據(jù)進(jìn)行互操作。通過(guò)有效地調(diào)用外部函數(shù),以及安全地訪問(wèn)外部?jī)?nèi)存,該 API 使 Java 程序能夠調(diào)用本地庫(kù)并處理本地?cái)?shù)據(jù),而沒(méi)有 JNI 的脆弱性和危險(xiǎn)。
Switch 模式匹配(第二次進(jìn)行預(yù)覽)
用?switch?表達(dá)式和語(yǔ)句的模式匹配,以及對(duì)模式語(yǔ)言的擴(kuò)展來(lái)增強(qiáng) Java 編程語(yǔ)言。將模式匹配擴(kuò)展到?switch?中,允許針對(duì)一些模式測(cè)試表達(dá)式,這樣就可以簡(jiǎn)明而安全地表達(dá)復(fù)雜的面向數(shù)據(jù)的查詢。這是 JDK 18 中的一個(gè)預(yù)覽的語(yǔ)言功能。
棄用 Finalization,以便在未來(lái)刪除
棄用 Finalization,以便在未來(lái)的版本中刪除它。目前 Finalization 仍然是默認(rèn)啟用的,但可以禁用它以便進(jìn)行早期測(cè)試。在之后的版本中,它將率先被默認(rèn)禁用,并在未來(lái)的版本中將其徹底刪除。依賴于 Finalization 的庫(kù)和應(yīng)用程序的維護(hù)者應(yīng)該考慮遷移到其他資源管理技術(shù),如?try-with-resources?語(yǔ)句。
更多詳情可查看:https://openjdk.java.net/projects/jdk/18/
下載:https://jdk.java.net/18/
有道無(wú)術(shù),術(shù)可成;有術(shù)無(wú)道,止于術(shù)
歡迎大家關(guān)注Java之道公眾號(hào)
好文章,我在看??
總結(jié)
以上是生活随笔為你收集整理的JDK 18 / Java 18 GA 发布的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 生产问题分析!delete in子查询不
- 下一篇: Java 中的5个代码性能提升技巧,最高