歷代JDK新特性是什么

這篇文章將為大家詳細講解有關(guān)歷代JDK新特性是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

我們提供的服務(wù)有:網(wǎng)站設(shè)計、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、晉源ssl等。為1000多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的晉源網(wǎng)站制作公司

JVM發(fā)展史

一,歷代JDK新特性介紹

1996年 SUN JDK 1.0 Classic VM

初代版本,偉大的一個里程碑,但是是純解釋運行,使用外掛JIT,性能比較差,運行速度慢。

1997年 JDK1.1 發(fā)布

AWT、內(nèi)部類、JDBC、RMI、反射

1998年 JDK1.2 Solaris Exact VM

JIT 解釋器混合
Accurate Memory Management 精確內(nèi)存管理,數(shù)據(jù)類型敏感
提升的GC性能
JDK1.2開始 稱為Java 2 J2SE J2EE J2ME 的出現(xiàn)
加入Swing Collections

2000年 JDK 1.3 Hotspot 作為默認虛擬機發(fā)布

加入JavaSound

2002年 JDK 1.4 Classic VM退出歷史舞臺

Assert 正則表達式 NIO IPV6 日志API 加密類庫

2004年發(fā)布 JDK1.5 即 JDK5 、J2SE 5 、Java 5

自動裝箱拆箱
泛型支持
元數(shù)據(jù)(注解)
Introspector(內(nèi)?。?br/>enum(枚舉)
靜態(tài)引入
可變長參數(shù)(Varargs)
foreach(高級虛幻)
JMM(內(nèi)存模型)
concurrent(并發(fā)包)

2006年發(fā)布JDK1.6既JDK6

命名方式變更
腳本語言
編譯API和微型HTTP服務(wù)器API
鎖與同步
垃圾收集
類加載
JDBC 4.0(jdbc高級)
Java Compiler (Java? 編程語言編譯器的接口)
可插拔注解
Native PKI(公鑰基礎(chǔ)設(shè))
Java GSS (通用安全服務(wù))
Kerberos ( 一種安全認證的系統(tǒng))
LDAP (LDAP )
Web Services (web服務(wù)即xml傳輸)

2011年 JDK7發(fā)布

switch語句塊中允許以字符串作為分支條件
創(chuàng)建泛型對象時應(yīng)用類型推斷
try-with-resources(一個語句塊中捕獲多種異常)
null值得自動處理
數(shù)值類型可以用二進制字符串表示
引入Java NIO.2開發(fā)包
動態(tài)語言支持
安全的加減乘除
Map集合支持并發(fā)請求

2014年 JDK8發(fā)布

引入Lambda 表達式
管道和流
新的日期和時間 API(加強對日期與時間的處理)
默認的方法(接口可以編寫默認的方法)
類型注解
Nashorn javascript引擎(允許java運行特定JavaScript代碼)
Optional class (處理nullPointException)
并行累加器
并行操作
內(nèi)存錯誤移除
TLS SNI 服務(wù)器名稱標識(Server Name Identification)

2016年JDK9

模塊化
接口支持編寫私有方法
Javadoc改進(支持符合html5 標準輸出)
Stream API 增強(簡化調(diào)用、操作、提供常用便捷的方法)
image API增強(支持多分辨率解析)
多版本jar支持(在不同環(huán)境運行不同jar包)
改進棄用注解使用@Deprecated
內(nèi)置輕量級json API
棄用Applet API
Deprecation的棄用

2018年JDK10

JEP286,var 局部變量類型推斷。
JEP296,將原來用 Mercurial 管理的眾多 JDK 倉庫代碼,合并到一個倉庫中,簡化開發(fā)和管理過程。
JEP304,統(tǒng)一的垃圾回收接口。
JEP307,G1 垃圾回收器的并行完整垃圾回收,實現(xiàn)并行性來改善最壞情況下的延遲。
JEP310,應(yīng)用程序類數(shù)據(jù) (AppCDS) 共享,通過跨進程共享通用類元數(shù)據(jù)來減少內(nèi)存占用空間,和減少啟動時間。
JEP312,ThreadLocal 握手交互。在不進入到全局 JVM 安全點 (Safepoint) 的情況下,對線程執(zhí)行回調(diào)。優(yōu)化可以只停止單個線程,而不是停全部線程或一個都不停。
JEP313,移除 JDK 中附帶的 javah 工具。可以使用 javac -h 代替。
JEP314,使用附加的 Unicode 語言標記擴展。
JEP317,能將堆內(nèi)存占用分配給用戶指定的備用內(nèi)存設(shè)備。
JEP317,使用 Graal 基于 Java 的編譯器,可以預(yù)先把 Java 代碼編譯成本地代碼來提升效能。
JEP318,在 OpenJDK 中提供一組默認的根證書頒發(fā)機構(gòu)證書。開源目前 Oracle 提供的的 Java SE 的根證書,這樣 OpenJDK 對開發(fā)人員使用起來更方便。
JEP322,基于時間定義的發(fā)布版本,即上述提到的發(fā)布周期。版本號為$FEATURE.$INTERIM.$UPDATE.$PATCH,分別是大版本,中間版本,升級包和補丁版本。

2018年JDK11

新特性及更新修改:
基于嵌套的訪問控制
標準 HTTP Client 升級
Epsilon:低開銷垃圾回收器
簡化啟動單個源代碼文件的方法
用于 Lambda 參數(shù)的局部變量語法
低開銷的 Heap Profiling
支持 TLS 1.3 協(xié)議
ZGC:可伸縮低延遲垃圾收集器
飛行記錄器
動態(tài)類文件常量

2019年JDK12

Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) 低暫停時間的GC
Microbenchmark Suite 微基準測試套件
Switch Expressions (Preview) Switch表達式
JVM Constants API JVM常量API
One AArch74 Port, Not Two 只保留一個AArch74實現(xiàn)
Default CDS Archives 默認類數(shù)據(jù)共享歸檔文件
Abortable Mixed Collections for G1 可中止的G1 Mixed GC
Promptly Return Unused Committed Memory from G1 G1及時返回未使用的已分配內(nèi)存

2019年JDK13

JEP 350,Dynamic CDS Archives
擴展應(yīng)用程序類-數(shù)據(jù)共享,以允許在 Java 應(yīng)用程序執(zhí)行結(jié)束時動態(tài)歸檔類。歸檔類將包括默認的基礎(chǔ)層 CDS(class data-sharing)存檔中不存在的所有已加載的應(yīng)用程序類和庫類。

JEP 351,ZGC: Uncommit Unused Memory
增強 ZGC 以將未使用的堆內(nèi)存返回給操作系統(tǒng)。

JEP 353,Reimplement the Legacy Socket API
使用易于維護和調(diào)試的更簡單、更現(xiàn)代的實現(xiàn)替換 java.net.Socket 和java.net.ServerSocket API 使用的底層實現(xiàn)。

JEP 354,Switch Expressions (Preview)
可在生產(chǎn)環(huán)境中使用的 switch 表達式,JDK 13 中將帶來一個 beta 版本實現(xiàn)。switch 表達式擴展了 switch 語句,使其不僅可以作為語句(statement),還可以作為表達式(expression),并且兩種寫法都可以使用傳統(tǒng)的 switch 語法,或者使用簡化的“case L ->”模式匹配語法作用于不同范圍并控制執(zhí)行流。這些更改將簡化日常編碼工作,并為 switch 中的模式匹配(JEP 305)做好準備。

JEP 355,Text Blocks (Preview)
將文本塊添加到 Java 語言。文本塊是一個多行字符串文字,它避免了對大多數(shù)轉(zhuǎn)義序列的需要,以可預(yù)測的方式自動格式化字符串,并在需要時讓開發(fā)人員控制格式。

2020年發(fā)布JDK14

305:instanceof的模式匹配(預(yù)覽)
343:包裝工具(培養(yǎng)箱)
345:G1的NUMA感知內(nèi)存分配
349:JFR事件流
352:非易失性映射字節(jié)緩沖區(qū)
358:有用的NullPointerExceptions
359:記錄(預(yù)覽)
361:開關(guān)表達式(標準)
362:棄用Solaris和SPARC端口
363:刪除并發(fā)標記掃描(CMS)垃圾收集器
364:Mac OS上的ZGC你像
365:Windows上的ZGC
366:棄用ParallelScavenge + SerialOld GC組合
367:刪除Pack200工具和API
368:文本塊(第二預(yù)覽)
370:外部存儲器訪問API(孵化器)

關(guān)于“歷代JDK新特性是什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

當前標題:歷代JDK新特性是什么
當前地址:http://muchs.cn/article44/pdpche.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、外貿(mào)建站、網(wǎng)站制作域名注冊App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司