JAVA版本號的問題——Java版本號與Jdk版本


初學Java時便一直疑惑Java版本號到底是如何命名的?時常在網上看到Java5、Java6、Java7、Java8 (到今天已經到了Java12了,2019.4.5) 這一類 “Java X” 的Java版本名稱,同時又會看到諸如JDK1.5、JDK1.6這中 “JDK1.X” 的JDk叫法。一直以來都在糾結Java以及JDK的規范版本名稱到底是如何,知道最近在幾本書上看到了相關的解釋才有點明白,現總結在這里:

首先1996年發布了最初版本Java1.0(此前原型為1995年的Oak,因Oak商標已被占用后改名為Java),此后為Java1.1、J2SE1.2、J2SE1.3、J2SE1.4、采用 1.X的命名方式,直到2004年的JavaOne會議后版本數提升為5.0,這一新版本為Java SE5.0(或J2SE5.0,此處存在疑問,網上使用較多為Java SE5),在2006年Sun公司終結了已經有8年歷史的J2SE、J2EE、J2ME的命名方式啟用了今天的 Java SE、Java EE、Java ME 命名方式,而此后的版本為Java SE6、Java SE7、Java SE8、Java SE9、Java SE10、Java SE11、Java SE12。

而JDK則在 Java1.0 到 Java9 對應每一個版本號 :JDK1.0、JDK1.2 ... JDK1.8、JDK1.9,Java10以后JDK對應名稱為:JDK10、JDK11、JDK12。

時間線如下:

下圖來自《Java核心技術》卷1 第2章 2.1.1

​ 你已經看到, JDK 是 Java Development Kit 的縮寫。有點混亂的是: 這個工具包的版本1.2 ~ 版本 1.4 被稱為 Java SDK (軟件開發包, Software Development Kit )。 在某些場合下,還可以看到這個過時的術語。另外, 還有一個術語是 Java 運行時環境( JRE ), 它包含虛擬機,但不包含編譯器。這並不是開發者想要的環境, 而是專門為不需要編譯器的用戶而提供。接下來, Java SE 會大量出現, 相對於 Java EE ( Enterprise Edition) 和 Java ME ( MicroEdition ), 它是 Java 的標准版。
​ Java 2 這種提法始於 1998 年。當時 Sun 公司的銷售人員感覺增加小數點后面的數值改變版本號並沒有反映出 JDK 1.2 的重大改進。但是,由於在發布之后才意識到這個問題, 所以決定開發工具包的版本號仍然沿用 1.2, 接下來的版本是 1.3、 1.4 和 5.0, 但是, Java 平台被重新命名為 Java 2。因此, 就有了 Java 2 Standard Edition Software Development Kit ( Java 2 標准版軟件開發包)的1.2版,即 J2SE SDK 1.2。
​ 幸運的是,2006 年版本號得到簡化。 Java 標准版的下一個版本取名為 Java SE 6, 后來又有了 Java SE 7 和 Java SE 8。不過,“- 內部” 版本號分別是 1.6.0、 1.7.0 和 1.8.0。當 Oracle 為解決一些緊急問題做出某些微小的版本改變時, 將其稱為更新。 例如: Java SE 8u31 是 JavaSE 8 的第 31 次更新, 它的內部版本號是 1.8.0_31。 更新不需要安裝在前一個版本上,它會包含整個 JDK 的最新版本。 另外, 並不是所有更新都公開發布, 所以如果“ 更新 31” 之后沒有“ 更新 32”,你也不用驚慌。

----引自《Java核心技術》卷1 第2章 2.1.1


免責聲明!

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



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