2017.9.21延期了好幾次的Java9正式發布,在人工智能的時代,java還能不能持續輝煌是個問題。看看java9的新特性沒什么讓自己想升級的意願,因為要么時一些特性用不到,要么時已經有其它方案代替沒必要再用它,用了反而要增加學習成本,可能造成其它jar包的不兼容等問題。
1,java9的核心變化
java9的核心變化就是引入了一種新的Java編程組件,也就是模塊化。大家都知道,java已經是老人家級別的語言了,從1995年到如今,jdk的版本升級使得它的功能愈發完善,但是這也導致了API的臃腫,java9的模塊技術的核心目標是減少Java應用和Java核心運行時環境的大小與復雜性。為此,JDK本身進行了模塊化,Oracle希望通過這種方式提升性能、安全性和可維護性。
2,輕量級JSON API
java9中有一個輕量級的API,它支持json文檔和數據流的生成和使用,在java9的主要特性中,這是非常值得期待的,同時也是最有望帶來性能改進的一個新特性
3,java9的垃圾收集機制
java9使用G1作為默認的垃圾收集器,替代了之前默認使用的Parallel GC,對於這個改變,evens的評論是醬紫的:這項變更是很重要的,因為相對於Parallel來說,G1會在應用線程上做更多的事情,而Parallel幾乎沒有在應用線程上做任何事情,它基本上完全依賴GC線程完成所有的內存管理。這意味着切換到G1將會為應用線程帶來額外的工作,從而直接影響到應用的性能
4,JShell
java9引入了jshell這個交互性工具,這對於使用java的程序員來講應該是個不錯的消息,jshell為java帶來了讀入-求值-打印-循環的功能。它的目的在於以即時結果和反饋的形式,簡化原型的實現並幫助我們探索語言在編碼時的可選項
JShell的一些鏈接:
http://download.java.net/java/jdk9/docs/api/jdk.jshell-summary.html
http://download.java.net/java/jdk9/docs/api/jdk/jshell/package-summary.html
5,Process API Changes
process API的改進將使java9對os process擁有更好的控制和管理方式
6,http2.0
http2.0已經獲批了,他是基於google的spdy算法構建的,http2.0將會比1.0擁有更加快的速度,而且會使巨大的提升。java9將全面支持http2.0,以所謂的孵化器模塊交付,並且為java配備一個全新的http客戶端來替代HttpURLConnection,並且同時還實現http2.0和websockets
7,如果你想了解文外更多,可以點擊下方鏈接下載java9(jdk9):http://www.oracle.com/technetwork/java/javase/downloads/index.html
http://blog.csdn.net/qq_38238041/article/details/78242546