目錄
Java産品線
Java發展史
Java産品線
Java SE
- 面向桌面級應用的Java平台,提供完整的Java核心API。
- JDK 6前被稱為J2SE。
Java EE
- 面向企業應用的Java平台,出了SE api外,還做了大量擴充。
- JDK 6以前被稱為J2EE。
- JDK 10後,Oracle捐給Eclipse基金會,改名Jakarta EE。
Java發展史
1995.5 JDK1.0:
Oak改名Java。
JDK:
核心API、內建API、使用者界面API、釋出技術、JVM
JRE:
Java程式的編譯器
1997.2 JDK1.1:
内部類、反射等。
1998.12 JDK1.2:
産品線拆分為:
J2ME
J2SE
J2EE
2000.2 JDK1.3:
HotSpot虛拟機作為預設Java虛拟機,由Longview公司設計,後被Sum收購,之前使用Sum Classic虛拟機。
2002.2 JDK1.4:
正規表達式、異常鍊、NIO、日志類、XML解析器等。
2004.9 JDK 5:
官方文檔不再隻用JDK1.5命名,隻有開發版本号繼續沿用1.x,公開版使用JDK x。
自動裝箱、泛型、動态注解、枚舉、可變長參數、foreach循環、并發包等。
2006.12 JDK 6:
Sum宣布開源Java。
産品重命名:
Java ME 6
Java SE 6
Java EE 6
2009.4 :
Oracle收購Sum。
2011.7 JDK 7:
G1收集器。
正式開始為Mac OS X作業系統提供支援。
2014.9 JDK 8 LTS:
Lambda表達式、新的時間、日期API等
徹底移除HotSpot的永久代。
2017.9 JDK 9:
Jigsaw子產品化。
增強工具JS Shell JLink等。
2018.3 JDK 10:
Oracle宣布Java EE成為曆史名詞。捐給Eclipse基金會,改名Jakarta EE
本地類型自動推斷
統一倉庫
統一垃圾收集器接口
統一即時編譯器接口(引入新的Graal即時編譯器)
2018.9 JDK 11 LTS:
"Java要開始收費啦!",純屬标題黨。
Oracle把商業特性開源給OpenJDK,以後将同時發行兩個JDK,Oracle OpenJDK,OracleJDK,差別是前者生産環境也是免費使用。
ZGC垃圾收集器
類型推斷加入Lamdba文法
2019.2 JDK 12:
Switch表達式
JMH,Java微測試套件
RedHat上司開發的Shenandoah垃圾收集器在OracleJDK12被強行除掉。
參考:《深入了解Java虛拟機》 第3版 周志明