java SE 7规范(又名JDK 7)
轉載自:http://www.javalord.com/javalordblog/?p=349
java SE 7規范(又名JDK 7)開發進展很順利,計劃于2011年夏天發布最終版本。為了讓開發者能夠方便快速地一覽JDK 7中的所有重要元素,Developer.com發表了JDK 7 Reference Card,為開發者提供參考。
| JSR203:JDK中會更多的IO API(“NIO.2”) | |
| 訪問文件系統 | 與之前的JDK中通過java.io.File訪問文件的方式不同,JDK7將通過java.nio.file包中的類完成。JDK7會使用java.nio.file.Path類來操作任何文件系統中的文件。(這里說的任何文件系統指的是可以使用任何文件存儲方式的文件系統) 示例: Java7之前 File file = new File(“some_file”); 使用Java7 Path path = Paths.get(“some_file”); 在File類中加入了新的方法toPath(),可以方便的轉換File到Path Path path = new File(“some_file”).toPath(); |
| Socket通道綁定和配置 | 在JDK7中面向通道的網絡編程也得以更新!JDK7中可以直接綁定通道的socket和直接操作socket屬性。JDK7提供了平臺socket屬性和指定實現的socket屬性。
|
| 靈活的異步I/O | 可以通過真正的異步I/O,在不同的線程中運行數以萬計的流操作!JKD7提供了對文件和socket的異步操作。一些JDK7中的新通道:
|
| JSR292:Java平臺中的動態編程語言 |
| Da Vinci Machine項目(JSR292)的主旨是擴展JVM支持除Java以外的其它編程語言,尤其是對動態編程語言的支持。所支持的語言必須和Java一樣不收到歧視并共同存在。 |
| JSR334:Java語言的一些改進 |
OpenJDK項目的創造(JSR334)的主旨是對Java語言進行一些小的改進來提高每天的Java開發人員的工作。這些改進包括:
|
| JSR119:Java編譯器API |
JSR199是在JDK6中加入的,主要用來提供調用Java編譯器的API。除了提供javac的命令行工具,JSR199提供Java編譯器到程序交互的能力。Java編譯器API要達到三個目標:
|
| JSR206:Java XML處理的API (JAXP) |
| JSR206即Java API for XML Processing(JAXP),是Java處理XML文檔的一個與實現無關,靈活的API。 JAXP1.3的主要特性包括:
|
| 綁定技術(JAXB) |
| JSR222即Java Architecture for XML Binding(JAXB)。JAXB的目的是便于Java程序進行Java類到XML文檔的映射。 JAXB2的主要特性:
|
| JSR224:基于XML的Web服務API(JAX-WS) |
| JSR224即Java API for XML-based Web Services(JAX-WS),是一個基于Annotation標注的編程模型,主要針對Web Service應用和客戶端開發。 JAX-WS2的主要特性包括:
事務處理(使用JAXB2.1綁定W3C EPR到W3CEndpointReference類,使用JAXB Marshall/Unmarshall W3CendpointReference類)
|
| 可插拔的Annotation處理API |
JSR269即Pluggable Annotation-Processing API
|
| 小的改進 | |
| java.util.Objects | 提供了一套9個靜態方法。其中兩個方法用來檢測當前對象是null還是非null。兩個方法用來提供生成toString()字符串同時支持null對象。兩個用來處理hash的方法。兩個方法用來處理equals。最后一個compare方法用來進行比較。 |
| Swing JLayer組件 | JXLayer是一個組件裝飾器,提供了用來裝飾多個組合組件的方式,并且可以捕獲所有鼠標、鍵盤和FocusEvent的事件,并針對所有的XLayer子組件。這個組件只會對public swing的api起作用,對全局設置沒有作用,例如對EventQueue或者RepaintManager。(除了這些,Swing還將在JDK7中提供JXDatePicker和CSS方式樣式) |
| 并發和集合API | JSR166,并發和集合API提供了靈活的異步處理,并發HashMap,傳輸隊列和輕量級的fork/join框架以及本地線程方式的偽隨機數生成器。 |
| 類加載器體系結構 | 類加載器已經升級到了可以在無等級類加載器拓撲中避免死鎖。JDK7中包含了一個對于多線程自定義類加載器的增強實現,名字為具有并行能力的類加載器。使用平行能力的類加載器加載class,會同步到類加載器和類名。 |
| Locale類的改進 | Java Locale避免由于小的變化導致數據丟失。除此,Locale應該提供更多的特性,例如IETF BCP 47和UTR 35(CLDR/LDML)。 |
| 分離用戶Locale和用戶接口Locale | JDK7分離了UI語言的locale和格式化locale,這個已經在Vista之后的windows系統中實現了。 |
| 嚴格的類文件檢測 | 通過JavaSE6的規范,version51(SE7)的類文件和之后的版本必須通過類型檢測來檢驗。對于老的推理驗證VM不可以宕掉 |
| Elliptic-Curve Cryptography (ECC)橢圓曲線加密 | 從JDK7開始,Java提供對標準的ECC算法的靈活實現(基于橢圓曲線的公鑰加密算法) |
| Swing中的Nimbus外觀 | Nimbus是JDS(Java Desktop System)中的新外觀。這個也是Solaris11的GTK主題 |
| Java2D中的XRender Pipeline | JDK7中加入了基于X11 XRender擴展的Java2D圖形管道。這將提供更多的對于當前先進的GPUs訪問的功能。 |
| TLS1.2 | TLS (Transport Layer Security)是一個用在Internet上的數據傳輸安全協議,用來避免監聽、引誘和消息偽造。TLS的主要目的是提供兩個應用間通信的隱私和數據完整。TLS是RFC5246標準,在JDK7中提供1.2 |
| JDBC4.0/4.1 | JDBC4.1特性只在JDK7或者更高版本中存在。JDBC4.1只是對JDBC4.0進行較小的改動。關于一些JDBC4.0/4.1的特性:
|
| 透明窗體和異形窗體 | 為了6u10版本的圖形處理,JDK提供了透明效果的支持(簡單透明和像素透明)并且提供了對于異形窗體的支持(可以將窗體設置成任意形狀),輕重混合并且增強了AWT安全警告。透明效果和異形窗體是通過com.sun.awt.AWTUtilities類實現的。 |
| Unicode6.0 | Unicode6.0提供了諸如2.088字符集、對已經存在字符集的屬性改進、格式化改進以及新的屬性和數據文件。 JDK7已經更新到對Unicode6.0的支持。 |
| 要來關閉URLClassLoader的方法 對JMX代理和MBeans的改進 | 通過URLClassLoader,應用可以通過URL搜索路徑來加載類和資源。JKD7提供了close()新方法來幫助URLClassLoader清理資源。 這個改進來至于JRockit,可以方便連接平臺。MBean服務器可以通過防火墻提供一套MBeans,這些暴露了VM中的一些內部操作的信息 |
| 新的垃圾回收器 | JDK7提供了新的垃圾回收器,針對目前的CMS垃圾回收器,這將會讓垃圾回收器有更少的停頓時間和更高的語言效果。 |
| 改進的JSR |
| JSR901:Java Language Specification(JLS)Java語言計劃 |
|
| JSR924:JVM平臺規范 |
|
| Java SE API |
|
| 延期到JDK8或者之后的規范 |
|
總結
以上是生活随笔為你收集整理的java SE 7规范(又名JDK 7)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 磁盘与文件系统管理--鸟哥私房菜读书笔记
- 下一篇: android紫禁城一日游的代码,故宫旅