Java 8 正式發(fā)布,新特性全搜羅
經(jīng)過(guò)2年半的努力、屢次的延期和9個(gè)里程碑版本,甲骨文的Java開(kāi)發(fā)團(tuán)隊(duì)終于發(fā)布了Java 8正式版本。
Java 8版本最大的改進(jìn)就是Lambda表達(dá)式,其目的是使Java更易于為多核處理器編寫(xiě)代碼;其次,新加入的Nashorn引擎也使得Java程序可以和JavaScript代碼互操作;再者,新的日期時(shí)間API、GC改進(jìn)、并發(fā)改進(jìn)也相當(dāng)令人期待。
另外,原本要加入Java 8的Jigsaw項(xiàng)目(標(biāo)準(zhǔn)模塊系統(tǒng))由于開(kāi)發(fā)時(shí)間關(guān)系,被推遲到了Java 9中,不過(guò)Java 8已經(jīng)在朝著這個(gè)方向努力了。
Java 8的所有新特性及改進(jìn)包括(JEP全稱為JDK Enhancement Proposal,JDK改進(jìn)建議):
語(yǔ)言改進(jìn):
- JEP 126:Lambda表達(dá)式 & 虛擬擴(kuò)展方法
- JEP 138:基于Autoconf的構(gòu)建系統(tǒng)
- JEP 160:針對(duì)Method Handles的Lambda形式的表征
- JEP 161:簡(jiǎn)潔的配置文件
- JEP 162:為模塊化做準(zhǔn)備
- JEP 164:利用CPU指令來(lái)改善AES加密的性能
- JEP 174:Nashorn引擎,允許在Java程序中嵌入JS代碼
- JEP 176:自動(dòng)檢測(cè)識(shí)別Caller-Sensitive方法
- JEP 179:JDK API變化和穩(wěn)定性記錄
VM基礎(chǔ)改進(jìn):
- JEP 142:減少指定字段上的緩存爭(zhēng)用
VM垃圾回收(vm/gc)改進(jìn):
VM運(yùn)行時(shí)(vm/rt)改進(jìn):
- JEP 136:提供更多的驗(yàn)證錯(cuò)誤信息
- JEP 147:減少類(lèi)元數(shù)據(jù)封裝
- JEP 148:支持創(chuàng)建小型虛擬機(jī)(3M以下)
- JEP 171:添加3個(gè)內(nèi)存有序化的內(nèi)聯(lián)函數(shù)
核心基礎(chǔ)(core)改進(jìn):
- JEP 153:命令行啟動(dòng)JavaFX應(yīng)用
核心lang(core/lang)改進(jìn):
- JEP 101:目標(biāo)類(lèi)型推斷
- JEP 104:Java類(lèi)型注解
- JEP 105:DocTree API
- JEP 106:在javax.tools中添加Javadoc
- JEP 117:移除APT(Annotation-Processing Tool)
- JEP 118:運(yùn)行過(guò)程中可訪問(wèn)參數(shù)名
- JEP 120:重復(fù)注解
- JEP 139:增強(qiáng)了javac,以改善構(gòu)建速度
- JEP 172:DocLint工具,用來(lái)檢查Javadoc注釋內(nèi)容
核心庫(kù)(core/libs)改進(jìn):
- JEP 103:并行數(shù)組排序
- JEP 107:集合數(shù)據(jù)批量操作
- JEP 109:增強(qiáng)的包含Lambda的核心庫(kù)
- JEP 112:改進(jìn)了字符集的實(shí)現(xiàn)
- JEP 119:Core Reflection提供的javax.lang.model實(shí)現(xiàn)
- JEP 135:Base64編解碼
- JEP 149:減少了核心庫(kù)的內(nèi)存占用
- JEP 150:日期時(shí)間API
- JEP 155:改進(jìn)對(duì)并發(fā)的支持
- JEP 170:JDBC 4.2
- JEP 177:java.text.DecimalFormat.format優(yōu)化
- JEP 178:靜態(tài)鏈接的JNI庫(kù)
- JEP 180:使用平衡樹(shù)處理頻繁的HashMap碰撞
核心i18n(core/i18n)改進(jìn):
- JEP 127:改進(jìn)了本地?cái)?shù)據(jù)封裝,采用Unicode CLDR數(shù)據(jù)
- JEP 128:BCP 47局部匹配
- JEP 133:Unicode 6.2
核心net(core/net)改進(jìn):
- JEP 184:HTTP URL訪問(wèn)權(quán)限
核心安全(core/sec)改進(jìn):
- JEP 113:MS-SFU Kerberos 5擴(kuò)展
- JEP 114:TLS Server Name Indication(SNI)擴(kuò)展
- JEP 115:AEAD密碼套件
- JEP 121:更強(qiáng)的口令加密系統(tǒng)算法
- JEP 123:可配置的安全隨機(jī)數(shù)生成方法
- JEP 124:增強(qiáng)了證書(shū)撤回檢測(cè)API
- JEP 129:NSA Suite B加密算法實(shí)現(xiàn)
- JEP 130:SHA-224消息摘要算法實(shí)現(xiàn)
- JEP 131:針對(duì)64位Windows的SunPKCS11加密提供程序
- JEP 140:特權(quán)限制
- JEP 166:徹底檢修JKS-JCEKS-PKCS12密鑰庫(kù)
web/jaxp改進(jìn):
- JEP 185:JAXP 1.5(限制獲取外部資源)
詳細(xì)信息:http://openjdk.java.net/projects/jdk8/features
JDK 8下載:https://jdk8.java.net/
同時(shí)發(fā)布的還有NetBeans IDE 8.0正式版本,新版本特性見(jiàn):NetBeans IDE 8.0 新特性一覽