首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 發展史:從 Oak 到雲原生時代的技術演進時間軸

     編輯:Java 相關知識

Java 由 James Gosling 於 1990 年代初在 Sun Microsystems 主導開發,歷經 Oak 智能家電失意、互聯網爆發契機、瀏覽器 Applet 盛衰、企業級標準確立、開源轉型與雲原生適配,成為全球最普及的程式語言之一。本文梳理關鍵里程碑、版本演進與生態變遷。

一、 起源:Stealth → Green → Oak (1990-1994)

  • 1990.12:Sun 內部啟動 Stealth 計劃,後改名 Green 計劃。Patrick Naughton 因 C++/API 痛苦尋求替代。
  • 核心團隊:James Gosling、Mike Sheridan、Patrick Naughton、Bill Joy (首席科學家) 在加州門洛帕克沙丘路小工作室閉門造車。
  • 目標:下一代智能家電 (微波爐、PDA) 程式設計語言,需可移植、安全、多執行緒、垃圾回收。
  • 語言誕生:Gosling 嘗試改良 C++ 失敗,重新設計語言命名 Oak (辦公室外橡樹)。
  • 1992 夏:演示 Green OS、Oak 語言、類庫、硬體平台。PDA 原型 Star7 含圖形界面與智能代理 Duke (Java 吉祥物起源)。
  • 1992.11:Green 計劃轉為子公司 FirstPerson Inc.,遷至帕洛阿爾托。針對有線電視機頂盒提案,敗給 SGI;與 3DO 合作亦失敗,團隊併回 Sun。

二、 轉向互聯網:WebRunner → HotJava → Java (1994-1995)

  • 1994.6-7:團隊三天腦力激盪,決定轉向萬維網。Mosaic 瀏覽器啟發同樣互動遠景。
  • 原型:Patrick Naughton 編寫微型瀏覽器 WebRunner,後改名 HotJava。
  • 更名 Java:Oak 商標被顯卡廠商註冊。命名靈感來自咖啡 (咖啡豆 Logo),十六進制魔數 CAFE BABE 見證趣味。
  • 1994.10:HotJava/Java 向 Sun 高層演示。
  • 1995.3.23:SunWorld 大會公開發布 Java 1.0a。John Gage 宣告技術;Netscape 執行副總裁 Marc Andreessen 同台宣佈 Navigator 內建支援 Java —— **關鍵聯盟**。
  • 1996.1:Sun 成立 Java Business Group 專職推進。

三、 瀏覽器時代興衰與伺服器端崛起 (1996-2005)

  • Applet 黃金期:瀏覽器內嵌 JVM,豐富網頁互動。
  • 2000s 中期:Flash 以輕量、動畫優勢完全擠佔簡單互動市場;Java Applet 淪為複雜企業應用 (如 Yahoo Games) 專用。
  • 微軟對抗:IE/Windows 停止捆綁 JVM,Sun 勝訴獲賠 2000 萬美元並強制執行兼容許可,但微軟選擇移除 Java 支援。
  • 伺服器端爆發:JSP/Servlet/EJB 成為企業級標準,WebSphere/WebLogic/JBoss 佔據中介軟體霸主地位。
  • 手持設備:J2ME (CLDC/MIDP) 攻佔功能機時代,Nokia 承諾 2003 年出貨 1 億支支援 Java 手機。

四、 桌面端突圍與開源轉型 (2004-至今)

  • 桌面應用困境:JVM 啟動開銷大、用戶未預裝、頻寬限制下載體驗差。
  • 轉機:硬體算力/頻寬指數級增長、JVM 品質躍升 (JIT/HotSpot)、-server 模式深度優化。
  • 代表性開源桌面應用:
    • IDE:NetBeans、Eclipse、IntelliJ IDEA Community
    • 編輯器:jEdit
    • BitTorrent:Azureus (Vuze)
    • OS:JNode
    • Apache 基金會:Ant、Derby、Hadoop、Tomcat、POI、Kafka、Flink...
    • 應用伺服器:JBoss (WildFly)、GlassFish (Payara)
  • 商業閉源:永中 Office (EIOffice)、Chrome 3D 遊戲、IBM WebSphere/ColdFusion/WebLogic。

五、 三大平台版本體系確立 (2005)

2005.6 JavaOne 大會,Sun 宣佈重命名去除數字「2」:

舊稱新稱定位
J2EEJava EE (Enterprise Edition)企業級分散式應用
J2SEJava SE (Standard Edition)桌面/伺服器通用基礎
J2MEJava ME (Micro Edition)嵌入式/行動裝置

六、 開源里程碑:OpenJDK (2006)

  • 2006 JavaOne:Sun 宣佈 OpenJDK 計劃,JVM、編譯器、類庫以 GPLv2 + Classpath Exception 開源。
  • 奠定現代 Java 生態開放治理基石,衍生出 Oracle JDK、Adoptium (Temurin)、Amazon Corretto、Azul Zulu、GraalVM 等多元發佈版。

七、 版本歷史時間表 (關鍵版本)

版本時間軸 1

版本時間軸 2

文字版關鍵節點

  • 1995.5.23:Java 語言誕生
  • 1996.1:JDK 1.0 發布
  • 1996.4:10 大 OS 廠商承諾嵌入 Java
  • 1996.9:8.3 萬網頁應用 Java
  • 1997.2.18:JDK 1.1 發布
  • 1997.4.2:首屆 JavaOne,參會超萬人創紀錄
  • 1997.9:Java Developer Connection 會員超 10 萬
  • 1998.2:JDK 1.1 下載超 200 萬次
  • 1998.12.8:J2EE 發布
  • 1999.6:J2SE/J2EE/J2ME 三版本同時發布
  • 2000.5.8:JDK 1.3 發布
  • 2000.5.29:JDK 1.4 發布 (正則、NIO、斷言、Logging)
  • 2001.6.5:Nokia 承諾 2003 年出貨 1 億 Java 手機
  • 2001.9.24:J2EE 1.3 發布
  • 2002.2.26:J2SE 1.4 發布,**計算能力大幅提升**
  • 2004.9.30:J2SE 1.5 發布 → 更名 Java SE 5.0 (泛型、註解、枚舉、自動裝箱、Varargs、Foreach) —— **語言演進里程碑**
  • 2005.6:JavaOne 發布 Java SE 6,三大平台更名去「2」
  • 2006.12:JRE 6.0 發布

八、 現代演進 (Java 8 以降)

  • Java 8 (2014):Lambda、Stream、Optional、新日期時間、默認方法、Nashorn JS 引擎 —— **函數式編程入主**。
  • Java 9 (2017):模組系統 (Jigsaw)、JShell、HTTP/2 Client、多版本 JAR。
  • Java 11 (2018 LTS):HTTP Client 標準化、var、String 新方法、飛行記錄器開源、移除 Java EE/JFX 模組。
  • Java 17 (2021 LTS):Sealed Class、Pattern Matching、Record、強封裝 JDK 內部 API、macOS/AArch64 支援。
  • Java 21 (2023 LTS):虛擬執行緒 (Virtual Threads)、結構化並發、模式匹配 switch、Record Patterns、Generational ZGC、未命名類/實例主方法預覽。

九、 結語

從智能家電失意到互聯網標準,從 Applet 瀏覽器戰爭到雲原生微服務基石,Java 的歷史是**適應性生存**的教科書。OpenJDK 開源治理與 LTS 版本節奏確立,讓 Java 在雲原生、Serverless、AI 基礎設施新時代持續佔據核心地位。下一個十年,Valhalla (Value Types)、Loom (虛擬執行緒)、GraalVM (原生映像) 將重塑 Java 效能與部署範式,續寫傳奇。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved