JDK8到JDK12各個版本的重要特性整理


JDK8新特性

1、Lambda表達式

2、函數式編程

3、接口可以添加默認方法和靜態方法,也就是定義不需要實現類實現的方法

4、方法引用

5、重復注解,同一個注解可以使用多次

6、引入Optional來避免空指針

7、引入Streams相關的API

8、引入新的Date/Time相關的API

9、新增jdeps命令行,來分析類、目錄、jar包的類依賴層級關系

10、JVM使用MetaSpace代替了永久代(PermGen Space)

JDK9新特性

1、接口方法可以使用private來修飾

2、設置G1為JVM默認垃圾收集器

3、支持http2.0的API

JDK10新特性

1、局部變量類型推斷,類似JS可以通過var來修飾局部變量,編譯之后會推斷出值的真實類型

2、並行Full GC,來優化G1的延遲

3、允許在不執行全局VM安全點的情況下執行線程回調,可以停止單個線程,而不需要停止所有線程或不停止線程

JDK11新特性

1、ZGC,ZGC可以看做是G1之上更細粒度的內存管理策略。由於內存的不斷分配回收會產生大量的內存碎片空間,因此需要整理策略防止內存空間碎片化,在整理期間需要將對於內存引用的線程邏輯暫停,這個過程被稱為"Stop the world"。只有當整理完成后,線程邏輯才可以繼續運行。(並行回收)

2、Flight Recorder(飛行記錄器),基於OS、JVM和JDK的事件產生的數據收集框架

JDK12新特性

1、Shenandoah GC

2、Switch 表達式表達式

3、G1收集器的優化


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM