日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java SE 7规范(又名JDK 7)

發布時間:2024/1/8 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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屬性。
  • JDK7加入了一個新的字節通道類,SeekableByteChannel
  • NetworkChannel是面向網絡通道編程模塊中的又一個新的超接口。利用它可以方便的綁定通道socket,并且方便設置和獲取socket的屬性。
  • MulticastChannel接口方便創建IP協議多播。多播實現直接綁定到本地的多播設備。
靈活的異步I/O可以通過真正的異步I/O,在不同的線程中運行數以萬計的流操作!JKD7提供了對文件和socket的異步操作。一些JDK7中的新通道:
  • AsynchronousFileChannel:異步文件通道可以完成對文件的異步讀寫操作。
  • AsynchronouseSocketChannel:Socket中的一個簡單異步通道,方法是異步的并且支持超時。
  • AsynchronousServerSocketChannel:異步的ServerSocket
  • AsynchronousDatagramChannel:基于數據包的異步socket
JSR292:Java平臺中的動態編程語言
Da Vinci Machine項目(JSR292)的主旨是擴展JVM支持除Java以外的其它編程語言,尤其是對動態編程語言的支持。所支持的語言必須和Java一樣不收到歧視并共同存在。
JSR334:Java語言的一些改進
OpenJDK項目的創造(JSR334)的主旨是對Java語言進行一些小的改進來提高每天的Java開發人員的工作。這些改進包括:
  • Switch語句允許使用String類型
  • 支持二進制常量和數字常量中可以使用下劃線
  • 使用一個catch語言來處理多種異常類型
  • 對通用類型實例的創建提供類型推理
  • Try-with-resources語句來自動關閉資源
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的主要特性包括:

  • DOM3
  • 內建通過XML Schema進行文檔校驗的處理器
  • 對XML Schema中的數據類型的實現,在javax.xml.datatype包中。
  • XSLTC,最快的轉換器,也是XSLT處理中的默認引擎。
  • 提供對XInclude的實現。這將會方便我們使用文本和其它已有的XML來創建新的文檔,這樣可以對文檔片段進行重用。
  • JDK7中會包含JAXP1.3,這個是JAXP的最新實現。
綁定技術(JAXB)
JSR222即Java Architecture for XML Binding(JAXB)。JAXB的目的是便于Java程序進行Java類到XML文檔的映射。

JAXB2的主要特性:

  • 支持全部的W3C XML Schema特性。(JAXB1.0說明了對于W3C XML Schema中某些特性的不支持)
  • 支持綁定Java到XML文檔,通過添加javax.xml.bind.annotation包來控制綁定。
  • 大量減少了對于schema衍生出來的類。
  • 通過JAXP1.3的校驗API來提供額外的校驗能力。
  • JDK7中將包括JAXB2.2
JSR224:基于XML的Web服務API(JAX-WS)
JSR224即Java API for XML-based Web Services(JAX-WS),是一個基于Annotation標注的編程模型,主要針對Web Service應用和客戶端開發。

JAX-WS2的主要特性包括:

  • 對JAXB2.1 API的支持(JSR222)
  • 對Web Services Addressing 1.0的支持
  • EndpointReference(EPR)的API:創建(BindingProvider.getEndpointReference(),Endpoint.getEndpointReference(),MessageContext.getEndpointReference())

事務處理(使用JAXB2.1綁定W3C EPR到W3CEndpointReference類,使用JAXB Marshall/Unmarshall W3CendpointReference類)

  • 提供友好的API來啟用和停止某些特性,例如MTOM特性和Addressing特性
  • JDK7將包含JAX-WS2.2
可插拔的Annotation處理API
JSR269即Pluggable Annotation-Processing API
  • 從JDK5開始,Annotation標注就成了強大的機制用來標注我們的類、屬性和方法。通常Annotation標注是在創建階段或者運行階段進行處理的,并獲取語義結果。JSR269主要用來定義一套API,允許通過可插拔的API來進行標注處理器的創建。
  • 規范包括一部分的API用來對Java編程語言進行構建,還有就對標注處理器聲明和控制運行的部分。
  • 有了程序中的Annotation標注,就需要有標注處理器框架來反射程序的結構。
  • Annotation處理器會指定他們處理的標注并且更多的處理器可以合作運行。
  • 標注處理器和程序結構的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方式樣式)
并發和集合APIJSR166,并發和集合API提供了靈活的異步處理,并發HashMap,傳輸隊列和輕量級的fork/join框架以及本地線程方式的偽隨機數生成器。
類加載器體系結構類加載器已經升級到了可以在無等級類加載器拓撲中避免死鎖。JDK7中包含了一個對于多線程自定義類加載器的增強實現,名字為具有并行能力的類加載器。使用平行能力的類加載器加載class,會同步到類加載器和類名。
Locale類的改進Java Locale避免由于小的變化導致數據丟失。除此,Locale應該提供更多的特性,例如IETF BCP 47和UTR 35(CLDR/LDML)。
分離用戶Locale和用戶接口LocaleJDK7分離了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 PipelineJDK7中加入了基于X11 XRender擴展的Java2D圖形管道。這將提供更多的對于當前先進的GPUs訪問的功能。
TLS1.2TLS (Transport Layer Security)是一個用在Internet上的數據傳輸安全協議,用來避免監聽、引誘和消息偽造。TLS的主要目的是提供兩個應用間通信的隱私和數據完整。TLS是RFC5246標準,在JDK7中提供1.2
JDBC4.0/4.1JDBC4.1特性只在JDK7或者更高版本中存在。JDBC4.1只是對JDBC4.0進行較小的改動。關于一些JDBC4.0/4.1的特性:
  • 數據源—Derby包括了對于javax.sql.DataSource的新的實現
  • JDBC驅動自動加載—應用不必在通過Class.forName()方法來加載數據庫驅動了。取而代之的是DriverManager會根據應用請求連接的情況,自動查找到合適的JDBC驅動。
  • 包裝—這是JDBC4.0中的新的概念,主要是通過這種機制可以讓應用獲取的廠商提供的標準JDBC對象實現,例如Connections,Statements和ResultSets。
  • Statement事件—連接池可以監聽Statement的關閉和錯誤時間。addStatementEventListener和removeStatementEventListener被加入到了javax.sql.PooledConnection
  • JDK7提供了JDBC4.1全部的支持
透明窗體和異形窗體為了6u10版本的圖形處理,JDK提供了透明效果的支持(簡單透明和像素透明)并且提供了對于異形窗體的支持(可以將窗體設置成任意形狀),輕重混合并且增強了AWT安全警告。透明效果和異形窗體是通過com.sun.awt.AWTUtilities類實現的。
Unicode6.0Unicode6.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語言計劃
  • JSR901包括了從第一版Java規范到現在為止的所有的變化、說明和補充。Java語言通過JLS規范。
  • 對于JLS的改變通過JSR901進行管理
  • JDK7將會包括最新的JSR901
JSR924:JVM平臺規范
  • JSR924目的是維護Java虛擬機規范的變化,其中第二版是為了J2SE1.5的。
Java SE API
  • JavaSE APIs保持著對例行維護和小范圍改進的加入計劃的記錄
延期到JDK8或者之后的規范
  • JSR294:Java語言和虛擬機對模塊編程技術的支持—當前JSR主要的目的是提供在編譯期和運行期的模塊編程支持
  • JSR308:對于Java類型的Annotation注釋—這將是對于當前注釋符號系統的擴展,將允許我們在類型中出現注釋符號。
  • JSR296:Swing應用框架—主旨是消除Swing編程中的模板代碼并且提供Swing程序更加簡單的結構。
  • 模塊化—提供一個明確的、簡單的、低級別的模塊系統,主要目的是將JDK模塊化。
  • JSR TBD:Lambda項目—Lambda表達式(通俗的也稱為“閉包“)和對Java編程語言的保護方法
  • JSR TBD:對于集合支持的語言—常量表達式對于lists、sets和maps的迭代以及通過索引符號對lists和maps的訪問。
  • Swing JDatePicker組件—添加SwingLabs JXDatePicker組件到平臺。

總結

以上是生活随笔為你收集整理的java SE 7规范(又名JDK 7)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。