欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報邀請碼778899分享:java JDK版本特性

柚子快報邀請碼778899分享:java JDK版本特性

http://yzkb.51969.com/

目錄

一、名詞說明

1.1 LTS版本

1.2屬于LTS的JDK版本

二、JDK各版本特性

2.1 JDK8(2014-03, LTS)

2.2 JDK9(2017-09)

2.3 JDK10(2018-03)

2.4 JDK11(2018-09, LTS)

2.5 JDK12(2019-03)

2.6 JDK13(2019-09)

2.7 JDK14(2020-03)

2.8 JDK15(2020-09)

2.9 JDK16(2021-03)

2.10 JDK17(2021-09, LTS)

2.11 JDK18(2022-03)

2.12 JDK19(2022-09)

2.13 JDK20(2023-03)

2.14 JDK21 (2023-09, LTS)

2.15 JDK22 (2024-03)

三、相關文獻

3.1 Java中JDK8、JDK11、JDK17,該怎么選擇?

3.2 JDK各版本文檔以及遷移說明

3.3 Oracle Java SE支持路線圖|Oracle 中國

一、名詞說明

1.1 LTS版本

LTS,原名 Long-Term Support 長期支持,正常情況下 當 JDK 12 正式發(fā)布后 JDK 11 將失效,但是由于 JDK 11 是 LTS 版本,所以會延長支持更新至 2032 年。

LTS 版本更加注重穩(wěn)定性,安全性,性能改進,默認支持是 8 年,其中 JDK 8 延長至 2030 年(16年),延長支持期間不再提供新的功能。

LTS 版本自 2021 年起,從 3 年發(fā)布一次更改為 2 年一次

1.2屬于LTS的JDK版本

JDK8, JDK11, JDK17, JDK21

二、JDK各版本特性

2.1 JDK8(2014-03, LTS)

接口默認方法

允許在接口中定義默認實現(xiàn)。

lambda表達式

引入了函數(shù)式編程的特性,使得代碼更加簡潔和靈活。

函數(shù)式接口streamAPI新的日期工具類Nashorn JavaScript 引擎

一個新的輕量級 JavaScript 運行時,允許在 JVM 上執(zhí)行 JavaScript 代碼。

性能改進

JDK 8 在垃圾回收器和 JIT 編譯器方面進行了優(yōu)化,提高了性能。

2.2 JDK9(2017-09)

主要:是API的優(yōu)化,如支持HTTP2的Client API、JVM采用G1為默認垃圾收集器。

模塊化

即只加載應用運行需要的模塊

JShell

一個新的交互式命令行工具,允許開發(fā)者逐行執(zhí)行 Java 代碼,并立即看到結果。

改進的Java doc 生成的Java doc符合H5標準,支持API搜索HTTP/2 新的方式處理HTTP調用,用于替換 HttpURLConnection,并提供對WebSocket和HTTP/2的支持。改進的 Stream API

增加了新的中間操作和終端操作,使得 Stream API 更加強大。

集合工廠方法

在 java.util.Collections 中增加了一些新的靜態(tài)工廠方法,用于創(chuàng)建不可修改的集合。

處理進程

引入了 java.lang.ProcessHandle 類,提供了對操作系統(tǒng)進程的更細粒度控制。

2.3 JDK10(2018-03)

主要:通過var關鍵字實現(xiàn)局部變量類型推斷,使Java語言變成弱類型語言、JVM的G1垃圾回收由單線程改成多線程并行處理,降低G1的停頓時間。

改進的垃圾回收器 并行full gc的G1,通過并行Full GC, 改善G1的延遲。目前對G1的full GC的實現(xiàn)采用了單線程-清除-壓縮算法。JDK10開始使用并行化-清除-壓縮算法?;趯嶒濲ava的JIT編譯器 啟用基于Java的JIT編譯器Graal,它是JDK9中引入的Ahead-of-time(AOT)編譯器的基礎。局部變量類型推斷

在 JDK 10 中,局部變量的類型推斷(var 關鍵字)被引入,這使得代碼更加簡潔。

HTTP 客戶端 API

提供了一個新的 HTTP 客戶端 API,用于簡化 HTTP 請求的發(fā)送和處理。

2.4 JDK11(2018-09, LTS)

主要:對于JDK9和JDK10的完善,主要是對于Stream、集合等API的增強、新增ZGC垃圾收集器。

HttpClient增強 同時提供了同步調用和異步調用實現(xiàn)。JDK對http對調用支持已經(jīng)足夠強,以前apache提供的httpComponents基本可以去除了。ZGC JDK11最矚目的特性,但目前是實驗性質的。目標是GC暫停時間不會超過10ms,既能處理幾百兆的小堆,也能處理幾個T的大堆。完全支持Linux容器 JDK10開始,JVM可以識別當前是否在容器中運行,能接受容器設置的內存限制和CPU限制。Flight Recorder

引入了 Flight Recorder,這是一個低開銷的事件記錄系統(tǒng),用于監(jiān)控和診斷 JVM 的性能問題。

Epsilon 垃圾回收器

作為一個實驗性的垃圾回收器,Epsilon GC 旨在為某些特定的應用場景提供更好的性能。

改進的 AArch64(ARM64)支持

JDK 11 對 ARM64 架構提供了更好的支持,使得 Java 應用程序可以在更多的設備上運行。

移除 Nashorn 引擎和 CORBA 模塊

這兩個特性在 JDK 11 中被移除,以減少 JDK 的體積和復雜性。

2.5 JDK12(2019-03)

主要:switch表達式語法擴展、G1收集器優(yōu)化、新增Shenandoah GC垃圾回收算法。

優(yōu)化swich使用

2.6 JDK13(2019-09)

主要:ZGC優(yōu)化,釋放內存還給操作系統(tǒng)、socket底層實現(xiàn)引入NIO。

優(yōu)化字符串拼接優(yōu)化Socket API

2.7 JDK14(2020-03)

gc相關

刪除CMS;棄用 ParallelScavenge + SerialOld GC 的垃圾回收算法組合;將 zgc 垃圾回收器移植到 macOS 和 windows 平臺。

instanceof擴展NullPointerException打印信息增強,定位錯誤

2.8 JDK15(2020-09)

RMI Actiation被標記為Deprecate,在JDK17中刪除。

RMI遠程方法調用,在JDK1.2中引入,為分布式提供延遲加載方式,已被web服務器替代。

JEP 339 Edwards-Curve Digital Signature Algorithm (EdDSA) 實現(xiàn)了EdDSA橢圓曲線簽名算法。JEP 384 Records (Second Preview) 引入了Record類型,解決定義大量get/set方法的問題,可一定程度替代掉lomobok移除Nashorn JavaScipt引擎

2.9 JDK16(2021-03)

387: 彈性Metaspace功能可將未使用的HotSpot虛擬機的Class Metadata(Metaspace)占用的內存更迅速的返回給操作系統(tǒng),從而減少Metaspace的占用并簡化Metaspace的代碼以降低維護成本。388: 將JDK移植到Windows/AArch64平臺。392: 提供用于打包獨立的Java應用程序的jpackage工具。

2.10 JDK17(2021-09, LTS)

主要:對前幾個版本的整合和完善。Spring 6和SpringBoot3需要JDK17。

JDK 內部的強封裝,除了sun.misc.Unsafe等關鍵的內部 API 外,用戶將不再可能通過單個命令行選項來 relax 對內部元素的強封裝,這在 JDK 9 到 JDK 16 中是可行的。該計劃的目標包括提高 JDK 的安全性和可維護性,并鼓勵開發(fā)人員從內部元素遷移到標準 API。刪除遠程方法調用 (RMI) 激活機制,同時保留 RMI 的其余部分。刪除實驗性 AOT 和 JIT 編譯器,它們幾乎沒有使用,但需要大量維護工作。該計劃要求維護 Java 級別的 JVM 編譯器接口,以便開發(fā)人員可以繼續(xù)使用外部構建的編譯器版本進行 JIT 編譯。將 JDK 移植到 MacOS/AArch64 以響應 Apple 將其 Macintosh 計算機從 x64 轉換到 AArch64 的計劃(Apple M1處理器)。針對 MacOS/AArch64 的更改有可能破壞現(xiàn)有的 Linux/AArch64、Windows/AArch64 和 MacOS/x64 port,但這種風險可通過預集成測試來降低。棄用 Applet API 以進行刪除。這個 API 本質上是無關緊要的,因為所有 Web 瀏覽器供應商要么已經(jīng)取消了對 Java 瀏覽器插件的支持,要么已經(jīng)宣布了這樣做的計劃。Applet API 之前在 2017 年 9 月的 Java 9 中已被棄用,但并未刪除。Applet API徹底被刪除,最早java就是靠applet開始火的。棄用 Security Manager,準備在未來版本中移除。追溯到 Java 1.0,Security Manager 一直是保護客戶端 Java 代碼的主要手段,很少用于保護服務器端代碼。該提案的一個目標是評估是否需要新的 API 或機制來解決使用 Security Manager 的特定狹窄用例,例如阻塞System::exit。計劃要求棄用 Security Manager 以與舊 Applet API 一起刪除,該 API 也計劃在 JDK 17 中棄用。

2.11 JDK18(2022-03)

Javadoc中支持代碼片段

從JDK18開始,可以使用@snippet來生成注釋,且可以高亮某個代碼片段

默認UTF-8字符編碼簡單的Web服務器

JDK18中提供了一個新命令jwebserver, 運行這個命令可以啟動一個簡單的,最小化的靜態(tài)web服務器,默認發(fā)布的是當前目錄

使用方法句柄重新實現(xiàn)反射核心功能 JDK18改進了java.lang.reflect.Method, Constructor的實現(xiàn)邏輯,使得性能更佳。 不涉及到API的變動,只要升級到該版本,就能享受到更好的性能。互聯(lián)網(wǎng)地址解析 SPI 對于互聯(lián)網(wǎng)地址解析 SPI,為主機地址和域名地址解析定義一個 SPI,以便 java.net.InetAddress 可以使用平臺內置解析器以外的解析器。

2.12 JDK19(2022-09)

405: Record記錄模式(預覽)422: Linux/RISC-V 端口424: 外部函數(shù)和內存 API(預覽版)425: 虛擬線程(預覽)426: Vector API(第四孵化器)427: 開關的模式匹配(第三次預覽)428: 結構化并發(fā)(孵化器)

2.13 JDK20(2023-03)

429:Scoped Values范圍值(孵化器)432:Record記錄模式(第二次預覽)433:開關的模式匹配(第四次預覽)434:外部函數(shù)和內存 API(第二預覽版)436:虛擬線程(第二預覽版)437:結構化并發(fā)(第二個孵化器)438:Vector API(第五孵化器)

2.14 JDK21 (2023-09, LTS)

430: 字符串模板(預覽)431: 有序集合439: 世代ZGC440: 記錄模式441: 開關的模式匹配442: 外部函數(shù)和內存 API(第三次預覽版)443: 未命名模式和變量(預覽)444: 虛擬線程445: 未命名類和實例主要方法(預覽)446: 范圍值(預覽)448: Vector API(第六個孵化器)449: 棄用 Windows 32 位 x86 端口以進行刪除451: 準備禁止動態(tài)加載代理452: 密鑰封裝機制API453: 結構化并發(fā)(預覽版)

2.15 JDK22 (2024-03)

423: G1 的區(qū)域固定447: super(…) 之前的語句(預覽)454: 外部函數(shù)和內存 API456: 未命名變量和模式457: 類文件 API(預覽版)458: 啟動多文件源代碼程序459: 字符串模板(第二次預覽)460: Vector API(第七個孵化器)461: 流收集器(預覽)462: 結構化并發(fā)(第二預覽版)463: 隱式聲明的類和實例主要方法(第二預覽版)464: 范圍值(第二次預覽版)

三、相關文獻

3.1 Java中JDK8、JDK11、JDK17,該怎么選擇?

Java中JDK8、JDK11、JDK17,該怎么選擇?-騰訊云開發(fā)者社區(qū)-騰訊云

3.2 JDK各版本文檔以及遷移說明

Java Platform, Standard Edition Documentation - Releases

3.3 Oracle Java SE支持路線圖|Oracle 中國

Oracle Java SE Support Roadmap | Oracle 中國

柚子快報邀請碼778899分享:java JDK版本特性

http://yzkb.51969.com/

好文推薦

評論可見,查看隱藏內容

本文內容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉載請注明,如有侵權,聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19557154.html

發(fā)布評論

您暫未設置收款碼

請在主題配置——文章設置里上傳

掃描二維碼手機訪問

文章目錄