1. 程式人生 > >java9最新發布

java9最新發布

bsp 不同 速度 websocket 相對 三方 time sock 根據

鏈接:http://pan.baidu.com/s/1slbRFa9 密碼:hcdj

給大家分享可以去下載

已接受的特性

1、 Jigsaw 項目:模塊化JDK源碼

Jigsaw項目即JEP201是為了模塊化Java代碼,並將JRE分成相互協作的組件。這個JEP是邁向Jigsaw四步中的第一步,它只是模塊化JDK源代碼,不會改變JRE和JDK的真實結構,從而使得編譯系統能夠模塊編譯並在構建時檢查模塊邊界。這個項目原計劃隨Java 8發布,但因為推遲,所以被放到了Java 9中。Jigsaw項目一旦完成,將允許開發者根據項目的需要自定義組件,從而減少rt.jar的大小;還可以做到使Java能夠更加容易的應用到小型計算設備(如網絡設備)中,同時也能夠使得開發者更加容易地構建和維護這些類庫。更多相關信息參見JEP201。

2、簡化了的進程API

目前,Java控制與管理系統進程的能力是有限的,為了獲得操作系統的一些信息需要調用本地程序或者其他變通方案。然而,在Java 9中將會新增一些新的、直接明了的方法來處理進程ID、名字和狀態以及枚舉多個JVM和進程等,從而擴展Java與操作系統的交互能力。更多相關信息參見JEP102。

3、 輕量級的JSON API

盡管目前有多種處理JSON的Java工具(如Google的Gson、阿裏巴巴的FastJson、IBM的Json4J等),但JSON API是Java語言的一部分,輕量並且運用了Java 8的新特性。JSON API將放在java.util包裏一起發布,這樣,開發者就可以直接使用JDK而無需再引入第三方JSON工具包了。更多相關信息參見JEP198。

4、 錢和貨幣的相關API

Java 9引入了新的貨幣API, 用來表示貨幣, 並支持幣種之間的轉換和各種復雜運算。更多的相關具體信息,參見JavaMoney項目和JSR354。

5、 改善鎖爭用機制

鎖爭用限制了許多Java多線程應用性能,新的鎖爭用機制改善了Java對象監視器的性能,並得到了多種基準測試的驗證(如Volano),這類測試可以估算JVM的極限吞吐量。實際中, 新的鎖爭用機制在22種不同的基準測試中都得到了出色的成績。如果新的機制能在Java 9中得到應用的話, 應用程序的性能將會大大提升。更多相關信息參見JEP143。

6、代碼分段緩存

Java 9的另一個性能提升來自於JIT(Just-in-time)編譯器。當某段代碼被大量重復執行的時候, 虛擬機會把這段代碼編譯成機器碼(native code)並儲存在代碼緩存裏面, 繼而通過訪問緩存中不同分段的代碼來提升編譯器的效率。代碼分段緩存機制將會提升許多方面的性能,如當JVM進行垃圾回收掃描的時候,就可以直接跳過永駐代碼,從而提升效率。更多相關信息參見JEP197。

7、智能Java編譯工具

智能Java編譯工具(sjavac)的第一階段始於JEP139這個項目, 用於在多核處理器情況下提升JDK的編譯速度。如今,這個項目已經進入第二階段即JEP199, 其目的是改進Java編譯工具,並取代目前JDK編譯工具javac,繼而成為Java環境默認的通用的智能編譯工具。更多相關信息參見JEP199。

期待但未確定的特性

1. HTTP 2.0客戶端

雖然HTTP 2.0標準還沒正式發布, 但是它已經進入了最終審查階段,並預計將在Java 9發布之前審查完畢。HTTP 2.0客戶端即JEP110將重新定義並實現一個全新的Java HTTP客戶端, 用來取代現在的HttpURLConnection, 同時還會實現HTTP 2.0和WebSockets等接口。另外,官方的HTTP 2.0 RFC預計於2015年2月發布, 它基於Google的SPDY協議。基於SPDY協議的網絡相對於基於HTTP 1.1協議的網絡有11.81%到47.7%的顯著提速。更多相關信息參見JEP110。

2. Kulla項目: Java的REPL實現

現在,Java官方並沒有提供REPL(讀取-求值-打印-循環)的實現。當我們需要運行幾行Java代碼做一個快速測試時, 我們不得不把這幾行代碼封裝在項目或者方法裏,才可以完成測試,而Kulla彌補了這些不足。Kulla將於2015年4月進行整合測試,如果Kulla進度比較快的話,或許能夠加入到Java 9中,就有希望成為Java官方發布的REPL解決方案。更多關於Kulla的相關信息參見於Kulla的計劃安排。

轉載鏈接

java9最新發布