Java 由 Sun Microsystems 於 1995 年 5 月正式發布,其前身是 James Gosling 博士領導的「綠色計劃」產出的 Oak 語言。隨著互聯網爆發,Oak 更名為 Java,以「Write Once, Run Anywhere」口號橫掃網絡編程領域。本文梳理 JDK 1.0 至 1.8 的關鍵里程碑,回顧虛擬機、語法、生態的演進歷程。

| 版本 | 年份 | 代號 | 核心特性 / 里程碑 |
|---|---|---|---|
| JDK 1.0 | 1996/01 | — | 首個正式版,Sun Classic VM(純解釋執行)、Applet、AWT |
| JDK 1.1 | 1997/02 | — | JDBC、JavaBeans、RMI、JAR、內部類、反射;後續小版本以寶石/南瓜等命名 |
| JDK 1.2 | 1998/12 | Playground | 三大版本劃分:J2SE/J2EE/J2ME;Swing、EJB、Collections、strictfp、首次內置 JIT(HotSpot/Exact VM) |
| JDK 1.3 | 2000/05 | Kestrel | JavaSound、Java 2D 增強、JNDI 升為平台服務、CORBA IIOP 實現 RMI |
| JDK 1.4 | 2002/02 | Merlin | 成熟里程碑:正則、NIO、Logging、XML/XSLT、異常鏈;眾多廠商實現 |
| JDK 1.5 | 2004/09 | Tiger | 語法大躍進:泛型、註解、自動裝箱、枚舉、foreach、可變參數;JMM 改進、java.util.concurrent |
| JDK 1.6 | 2006/12 | Mustang | 更名 Java SE/EE/ME 6;動態語言支援 (Rhino)、Compiler API、HTTP Server API、VM 大幅優化(鎖、GC、類加載);開源 OpenJDK |
| JDK 1.7 | 2011/07 | Dolphin | G1 GC(後轉正)、JSR-292 invokedynamic、類加載重構;B 計劃裁剪 Lambda/Jigsaw 至 1.8 |
| JDK 1.8 | 2014/03 | — | Lambda 表達式、Stream API、默認方法、新時間日期 API、Nashorn JS 引擎、Metaspace 取代 PermGen |
簡單性、面向對象、分布式、解釋執行、健壯性、安全性、體系結構中立、可移植、高性能(JIT)、多線程、動態性。
「時間若白駒過隙,彈指間 19 年過去。」Java 的歷史,就是一部適應變化、拥抱開源、平衡創新與穩定的軟體工程史詩。