Oracle發佈JDK14,網友:使用算我輸,為什麼新版本沒有吸引力?

最近,新版本的JDK又發佈了,並且已經發布最新的JDK版本 為14。 從2017年8月開始,JDK更新的頻率已變為半年一次,並將在每年的3月和9月確定發佈。

最早的JDK於1996年發佈。它比許多使用者還年輕。 歷年發佈的頻率如下:


Oracle發佈JDK14,網友:使用算我輸,為什麼新版本沒有吸引力?

Java 8 與 Java 11 為當前提供支持的LTS(長期支持)版本;
2018年9月,隨著 Java 11 的發佈,Java 10 自當日起不再被支持。
Oracle 於 2019 年 1 月前為商業用途中的 Java 8 長期支持,而針對非商用的更新將繼續提供,直至 2020 年 12 月;
此外,AdoptOpenJDK 也為 Java 8 提供免費更新。
針對 Java 11 的長期支持將不再由 Oracle 提供,而是改由 OpenJDK 社區的 AdoptOpenJDK 提供。

各版本重大更新內容
從Java第一個版本發佈到現在,已經有24年了,24年中共發佈了14個版本,那麼,。讓我們細數一下各個版本中增加的主要特性有哪些。
JDK 1.0
第一個版本於1996年1月23日發佈,叫做為Oak。而真正第一個穩定的版本JDK 1.0.2,被稱作Java 1。
JDK 1.1
內部類
JDBC
JavaBeans


J2SE 1.2
Java集合框架
Swing圖像化API
JIT編譯器


J2SE 1.3
HotSpot JVM
JNDI
JPDA


用於實現動態代理的類


J2SE 1.4
assert 關鍵字
異常鏈
NIO


J2SE 5.0
泛型
元數據
自動封箱、自動拆箱
枚舉
可變參數函數
強化for each循環
Swing
java.util.concurrent包


Java SE 6
支持JDBC 4.0


Java SE 7
在switch中使用字符串類型
try-with-resources
新的invokedynamic字節碼指令
允許在數值字面值中加入下劃線


Java SE 8
Lambda表達式
Nashorn
移除了虛擬機內存管理中的永久代
新的日期和時間 API


Java SE 9
Jigsaw項目中將JDK模塊化


jshell
jlink


Java SE 10
局部變量類型推斷
適用於G1的多線程完全垃圾回收


Java SE 11
ZGC
Epsilon
Java SE 12


Shenandoah
Switch 表達式(預覽)


Java SE 13
Text Blocks(預覽階段)
動態 CDS 歸檔


Java SE 14
Records
Switch 表達式
友好的空指針異常
打包工具

眾多新版本仍不及jdk8

從Java 8推出至今,已經很快的發展到了Java 14了,很多人做過調查,最終結果顯示都是Java 8的使用者最多。
隨便放兩個統計結果大家感受下:


Oracle發佈JDK14,網友:使用算我輸,為什麼新版本沒有吸引力?


Oracle發佈JDK14,網友:使用算我輸,為什麼新版本沒有吸引力?

從這些統計數據中,我們可以看到Java 8是最常用的,其次是Java 11。

大多數人選擇Java 8和Java 11的原因是,這兩個版本當前已正式宣佈獲得長期支持。

當前的Java 8和Java 11將一直得到官方的持續支持,直到2023年。剛剛在3月份發佈的JDK 14將在今年9月以後不再維護更新。 JDK 8之後發佈的其他非LTS版本的更新和維護時間大約是今年左右。

您可以在JDK的官方網站上查看JDK 8的更新歷史記錄,最新版本是2020年1月14日。


Oracle發佈JDK14,網友:使用算我輸,為什麼新版本沒有吸引力?

另外,在兩個長期支持的版本 JDK 8 和 JDK 11中,相比之下肯定是JDK 11 的新特性更多一些,但是並沒有真的非升不可的新特性。

一方面,JDK 8在JDK 7發佈三年後才推出,其中包括許多重要的語言特性和技術升級,例如函數式程,以及一些小的更改,例如在HashMap中引入了紅黑樹。

所以JDK 8有許多忠實用戶。另一方面,JDK升級是一項消耗人力物力的項目。沒有足夠的利益,許多公司和組織不願意大規模升級。

可以預見的是,在很長一段時間內,JDK 8仍將是主流版本。但是,值得一提的是,此版本的JDK 14確實添加了一些非凡的新功能。

最終,新版本陸續問世。你應該升級嗎?

我認為如果你所在的公司生產環境中使用的是Java 8的話,則目前無需升級。如果要升級,則首選Java 11。但是,作為開發人員,您可以在本地安裝最新版本的JDK,瞭解並學習新特性。

因此,你可以繼續使用Java 8。

那麼,您使用的是哪個版本的JDK?


你使用的JDK是哪個版本? (單選)
0人
0%
JDK5
0人
0%
JDK6
0人
0%
JDK7
0人
0%
JDK8
0人
0%
JDK9
0人
0%
JDK10
0人
0%
JDK11
0人
0%
JDK12
0人
0%
JDK13
0人
0%
JDK14
<button>投票/<button>



MYSQL專欄原價49.9前面50個購買的用戶只需0.01分,



分享到:


相關文章: