英文原文: LearnComputer,翻譯:iteye
我們一直在期待著 Java 8 的新功能,雖然很大一部分是對 Java 7 的擴充套件,釋出時間也一推再推。但如今甲骨文終於承諾:新版本將是徹底的變革而不僅僅是 Java 7 的擴充套件。那 Java 8 到底是什麼樣的呢?
甲骨文的 Java 總架構師馬克·雷納德在 2011 年 JavaOne 大會上為大家透露了 Java 8 的新功能,同時也談到了一些關於 Java 9 的計劃。他說,Java 7 未能實現五個關鍵的功能是非常遺憾的一件事,而且另外兩個功能為了配合釋出日期也只好作罷。馬克認為,Java 7 的更新是非常重要的,他還暗示,Java 8 將從根本上改變程式語言的功能。看完下面的介紹你也許會明白馬克的說法不是天方夜譚。
Java 8 包含兩個主要專案:
1. Lambda
在 Lambda 專案中,多核處理器下的 Java 程式設計將更高效,Lambda 表示式可以幫助開發人員提高效率,更好地利用多核處理器。Lambda 專案還包括一個新的處理系統,該系統允許要求程式碼建模的程式設計模式作為資料。新功能一覽:
● Lambda 表示式的運用
● 擴充套件目標型別化
● 方法和建構函式參考
● 預設方法
2. Jigsaw
Jigsaw 專案的目標是建立一個實用的方式來在 JDK 上設計和實施一個模組系統,然後將該系統應用於 JDK 本身。其關鍵是令大塊的程式碼更易於管理,並促進應用和大型運算的程式碼重用。Jigsaw 專案還帶來了許多新的表單功能,涉及封裝、重構、版本和模組整合。
此外,除了這兩個專案,Java 8 還增加改進了一些其他語言功能,如升級核心 Java 庫使並行運算的表達更容易;虛擬擴充套件方法允許對介面增加方法,為預設實現指定參考;增加新的日期/時間 API,同時支援感測器,增加程式碼的部署選項。
Java 9、10的發展規劃
甲骨文對 Java 8 的前景很是看好,並已經開始討論 Java 9 發展的關鍵領域。比如加入一個 self-tuning JVM,提高本地整合和大規模多核的可擴充套件性;通過新的元物件協議和資源管理器為雲應用新增跨語言支援。
甲骨文也表示,Java9和 10 將加入大資料、多語言的互操作性、雲端計算和移動,預期分別於 2015 年和 2017 年釋出。而關於 Java 開發工具包(JDK)10以及之後的版本也正在討論中,比如使 Java 語言物件導向,形成一個統一的型別系統,所有原語都將轉換為物件和方法。
隨著使用人數的增加,Java 正逐漸成為最常用的程式語言,令每個使用者都滿意成了它的目標。甲骨文認為 Java 在將來會成為開發者們首選的程式語言,因為它可以實現的東西正好符合了開發者們的期望。