無(wú)為

          無(wú)為則可為,無(wú)為則至深!

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks
          Java?2?Standard?Edition,?Version?1.5.0?是主要特性版本。下面列出的一些特性是自前一主要版本?(1.4.0)?以來(lái),在1.5.0?中引入的新特性。?Enhancements?
          and?Changes?in?J2SE?1.4.2?on?the?web?site.
          -->
          對(duì)于新特性中的亮點(diǎn),也請(qǐng)參見(jiàn)?[url=http://java.sun.com/developer/technicalArticles/releases/j2se15/]J2SETM?1.5?簡(jiǎn)介[/url]。?對(duì)于具體問(wèn)題,參見(jiàn)?[url=http://java.sun.com/j2se/1.5.0/relnotes.html]1.5.0?版本說(shuō)明[/url]。?
          注意:對(duì)于這一?J2SE?1.5.0?BETA1?版本,從本頁(yè)所鏈接到的一些文檔可能還未更新過(guò)。?New?
          Features?on?java.sun.com.
          -->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#platform]操作系統(tǒng)與硬件平臺(tái)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#platform_configs]支持的系統(tǒng)配置[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#platform_proc64]64?位?AMD?Opteron?處理器[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#vm]虛擬機(jī)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#vm_selftune]Java?堆自我調(diào)整[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#vm_classdatashare]類(lèi)數(shù)據(jù)共享[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#vm_gc_ergo]垃圾收集器工效學(xué)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#vm_fatal_err]致命錯(cuò)誤處理[/url]?Sever?VM
          ??Client?VM
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#lang]Java?語(yǔ)言特性[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#boxing]Autoboxing/Unboxing[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#forloop]增強(qiáng)的?for?循環(huán)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#generics]泛型[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#metadata]元數(shù)據(jù)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#static_import]靜態(tài)導(dǎo)入[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#enums]類(lèi)型安全枚舉[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#varargs]Varargs[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#core_libs]核心庫(kù)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#networking]網(wǎng)絡(luò)[/url]?New?I/O
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#security]安全[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#core_i18n]國(guó)際化[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#formatter]Formatter?類(lèi)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#scanner]Scanner?類(lèi)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#beans]JavaBeansTM?組件體系結(jié)構(gòu)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#collect]集合框架[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jaxp]Java?API?for?XML?Processing?(JAXP)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#bitman]位操縱操作[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#math]Math?包[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#instrument]Instrumentation?包[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#serialization]序列化[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#concurrency]并發(fā)實(shí)用程序[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#threads]線程優(yōu)先級(jí)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#thread_dump]線程轉(zhuǎn)儲(chǔ)?API[/url]?Floating-Point?Exceptions
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jmx]監(jiān)控和管理[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#integration_libs]集成庫(kù)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#rmi]遠(yuǎn)程方法調(diào)用(RMI)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jdbc]Java?數(shù)據(jù)庫(kù)連接(JDBC)[/url]?CORBA,?Java?IDL,?and?Java?RMI-IIOP?
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jndi]Java?命名和目錄接口(JNDI)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#ui]用戶接口[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#ui_i18n]國(guó)際化[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#js]Java?聲音技術(shù)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#2d]Java?2DTM?技術(shù)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#imageio]圖像?I/O[/url]?Fonts?for?Japanese?Locale
          ??Input?Methods?
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#awt]AWT[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#swing]Swing[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#deploy]部署[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#deploy_general]一般部署[/url]?Applets?
          ??Java?Plug-in?Technology
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#deploy_jws]Java?Web?Start?部署[/url]?Java?Update
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#tools]工具和工具體系結(jié)構(gòu)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jvmti]Java虛擬機(jī)工具接口(Java?Virtual?Machine?Tool?Interface,JVMTI)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#jpda]Java平臺(tái)調(diào)試器體系結(jié)構(gòu)(Java?Platform?Debugger?Architecture,JPDA)[/url]?Java?Virtual?Machine?Profiler?Interface?(JVMPI)?
          ??Java?Virtual?Machine?Debug?Interface?(JVMDI)?
          ??-->
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#javac]Java?編譯器(javac)[/url]?
          [url=http://www.huihoo.com/java/j2se/j2se1.5_features.html#javadoc]Javadoc?工具[/url]?Jarsigner?Tool?
          ??-->
          操作系統(tǒng)與硬件平臺(tái)
          [url=http://java.sun.com/j2se/1.5.0/system-configurations.html]支持的系統(tǒng)配置[/url]?有關(guān)更多信息,請(qǐng)單擊上面的鏈接。?
          64?位?AMD?Opteron?處理器?對(duì)于?J2SE?1.5.0,AMD?Opteron?處理器由?Suse?Linux?和?Windows?2003?上的服務(wù)器虛擬機(jī)支持。?
          虛擬機(jī)
          Java?堆自我調(diào)整請(qǐng)求?JVM?自我調(diào)整?Java?堆大小的選項(xiàng)已經(jīng)得到改進(jìn),現(xiàn)在可以同時(shí)考慮應(yīng)用程序性能和應(yīng)用程序的內(nèi)存占用。可以指定應(yīng)用程序的性能目標(biāo),然后?JVM?將調(diào)整?Java?堆的大小,以便使用與那些目標(biāo)一致的最小的應(yīng)用程序內(nèi)存占用來(lái)滿足這些性能目標(biāo)。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/vm/class-data-sharing.html]類(lèi)數(shù)據(jù)共享[/url]?類(lèi)數(shù)據(jù)共享特性的目標(biāo)是為了減少應(yīng)用程序的啟動(dòng)時(shí)間和內(nèi)存占用。安裝進(jìn)程從系統(tǒng)?jar?文件中把一組類(lèi)加載到私有的內(nèi)部表示,然后把那個(gè)表示轉(zhuǎn)儲(chǔ)到“共享存檔”文件。在后續(xù)的?JVM?調(diào)用期間,那個(gè)共享存檔映射在內(nèi)存中,從而減少了加載那些類(lèi)的開(kāi)銷(xiāo),并允許在多個(gè)?JVM?進(jìn)程間共享這些類(lèi)的許多?JVM?元數(shù)據(jù)。有關(guān)更多信息,請(qǐng)單擊上面的鏈接。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/vm/gc-ergonomics.html]垃圾收集器工效學(xué)[/url]?并行收集器已經(jīng)得到了增強(qiáng),現(xiàn)在可以監(jiān)控和適應(yīng)應(yīng)用程序的內(nèi)存需求。這個(gè)適應(yīng)性策略的目標(biāo)是,免去為獲得最佳性能而調(diào)整命令行選項(xiàng)的需要。有關(guān)垃圾收集特性的簡(jiǎn)要介紹,請(qǐng)單擊上面的鏈接。?
          致命錯(cuò)誤處理?致命錯(cuò)誤報(bào)告機(jī)制已經(jīng)得到了增強(qiáng),現(xiàn)在可以提供改進(jìn)的診斷輸出和可靠性。?
          [url=http://java.sun.com/j2se/1.5.0/lang.html]JavaTM?語(yǔ)言特性?[/url]
          有關(guān)更多信息,請(qǐng)參見(jiàn)?[url=http://java.sun.com/j2se/1.5.0/lang.html]新語(yǔ)言特性[/url]。?
          Autoboxing/Unboxing?這個(gè)工具免去了在原語(yǔ)類(lèi)型(如?int)及包裝器類(lèi)型(如?Integer)之間進(jìn)行手工轉(zhuǎn)換的苦差事。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=201]JSR?201?[/url].?
          增強(qiáng)的?for?循環(huán)?當(dāng)在集合和數(shù)組中遍歷時(shí),這種新語(yǔ)言構(gòu)造免去了這種苦差事及容易在迭代器和索引變量中出錯(cuò)的傾向。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=201]JSR?201?[/url].?
          泛型這個(gè)長(zhǎng)期等待的類(lèi)型系統(tǒng)增強(qiáng)使得類(lèi)型或方法可以在各種類(lèi)型的對(duì)象上操作,同時(shí)提供編譯時(shí)類(lèi)型安全。它在集合框架中添加了編譯時(shí)類(lèi)型安全,并免去了泛味的類(lèi)型轉(zhuǎn)換工作。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=14]JSR?14[/url].?
          元數(shù)據(jù)?Metadata
          -->通過(guò)啟用工具來(lái)從源代碼的注釋中生成規(guī)范代碼,這種語(yǔ)言特性讓您可以避免在許多環(huán)境中編寫(xiě)這種規(guī)范代碼。這導(dǎo)致了“聲明性”編程風(fēng)格,在這種風(fēng)格下,程序員說(shuō)應(yīng)該做什么,工具就產(chǎn)生代碼來(lái)做它。同時(shí)它免去維護(hù)“附屬文件”(side?files)的需要,而這些“附屬文件”是要與源代碼中的更改保持同步的。不過(guò),信息可以在源文件中維護(hù)。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=175]JSR?175[/url].?
          靜態(tài)導(dǎo)入?Static?Import
          -->這個(gè)工具讓您避免使用類(lèi)名來(lái)限定靜態(tài)成員,并且不會(huì)有“常量接口反模式”的缺點(diǎn)。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=201]JSR?201[/url].?
          類(lèi)型安全枚舉?Typesafe?Enums
          -->這個(gè)靈活的面向?qū)ο竺杜e類(lèi)型工具使您能夠使用任意方法和字段創(chuàng)建枚舉類(lèi)型。它提供了類(lèi)型安全模式(“有效的?Java”第?21?條款)的所有優(yōu)點(diǎn),并且不會(huì)引起冗長(zhǎng)和易于出錯(cuò)。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=201]JSR?201[/url].?
          varargs?Varargs
          -->這個(gè)工具免去了在調(diào)用接受可變長(zhǎng)度參數(shù)列表的方法時(shí),需要手動(dòng)把變量列表封裝到數(shù)組中。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=201]JSR?201[/url].?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/net/enhancements-1.5.0.html]網(wǎng)絡(luò)[/url]有關(guān)添加的網(wǎng)絡(luò)特性的概述,請(qǐng)單擊上面的鏈接。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/security/index.html]安全[/url]這一版本的?J2SE?在安全方面大大增強(qiáng)了。它為安全性令牌提供了更好的支持,?為更多的安全標(biāo)準(zhǔn)(SASL、OCSP?和?TSP)提供了支持,改進(jìn)了可伸縮性(SSLEngine)和性能,此外在?Crypto?和?Java?GSS?方面也提供了許多增強(qiáng)功能。有關(guān)更多信息,請(qǐng)參見(jiàn)上面的鏈接。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/intl/index.html]國(guó)際化[/url]增強(qiáng)功能有:?
          現(xiàn)在?字符處理是以?4.0?版本的?Unicode?標(biāo)準(zhǔn)為基礎(chǔ)的。這就影響了?java.lang?包中的?Character?類(lèi)和?String?類(lèi)、java.text?包中的排序規(guī)則和雙向文本分析功能、java.util.regex?包中的?Character?類(lèi)及?J2SE?的其他許多部分。作為這一升級(jí)的一部分,JSR?204?專(zhuān)家組已經(jīng)指定了對(duì)輔助字符的支持,而且在整個(gè)?J2SE?中已經(jīng)實(shí)現(xiàn)了該支持。有關(guān)更多信息,請(qǐng)參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=204]JSR?204[/url]?或?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Character.html]Character[/url]?類(lèi)文檔。?
          [url=http://java.sun.com/j2se/1.5.0/docs/api/java/text/DecimalFormat.html]DecimalFormat[/url]?類(lèi)已經(jīng)得到了增強(qiáng),現(xiàn)在可以格式化和解析?BigDecimal?和?BigInteger?值,而不會(huì)丟失精確度。這些值的格式化是自動(dòng)得到增強(qiáng)的;必須啟用?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/text/DecimalFormat.html#setParseBigDecimal(boolean)]setParseBigDecimal[/url]?方法才可以進(jìn)行到?BigDecimal?的解析。?
          現(xiàn)在,Vietnamese?在?java.util?和?java.text?包中所有的?Locale?敏感功能方面得到了支持。有關(guān)支持的?Locale?和寫(xiě)系統(tǒng)的完整信息,請(qǐng)參見(jiàn)?[url=http://java.sun.com/j2se/1.5.0/docs/guide/intl/locale.doc.html]支持的?Locale[/url]。?
          [url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html]Formatter?類(lèi)[/url]針對(duì)輸出樣式格式的字符串的解釋器?——?Formatter?類(lèi)?——?為布局調(diào)整和對(duì)齊、通用的數(shù)字、字符串和日期/時(shí)間數(shù)據(jù)以及特定于?Locale?的輸出格式提供了支持。通用的?Java?類(lèi)型,比如?byte、[url=http://java.sun.com/j2se/1.5.0/docs/api/java/math/BigDecimal.html]java.math.BigDecimal[/url]?和?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/Calendar.html]java.util.Calendar[/url],是得到支持的。針對(duì)任意用戶類(lèi)型的有限格式化自定義是通過(guò)?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formattable.html]java.util.Formattable[/url]?接口來(lái)提供的。?
          [url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/Scanner.html]Scanner?類(lèi)[/url]java.util.Scanner?類(lèi)可用于將文本轉(zhuǎn)換成原語(yǔ)或字符串。由于它是基于?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/package-summary.html]java.util.regex[/url]?包的,因此它也提供了一種方式來(lái)管理正則表達(dá)式,該表達(dá)式把搜索建立在流、文件數(shù)據(jù)、字符串或?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Readable.html]Readable[/url]?接口的封裝行為(implementor)上。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/beans/index.html]JavaBeans?組件體系結(jié)構(gòu)[/url]?已經(jīng)添加了一個(gè)稱(chēng)為?IndexedPropertyChangeEvent?的?PropertyChangeEvent?子類(lèi)來(lái)支持界限屬性,該屬性使用索引來(lái)指出?bean?的更改部分。另外,已經(jīng)在?PropertyChangeSupport?類(lèi)中添加了一些方法,用以支持激發(fā)索引屬性改變事件。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/collections/index.html]集合框架[/url]?集合框架已經(jīng)通過(guò)?[url=http://java.sun.com/j2se/1.5.0/docs/guide/collections/changes5.html]下面幾個(gè)方式[/url]?得到了增強(qiáng):?
          三個(gè)?新語(yǔ)言特性是直接針對(duì)集合的:泛型、增強(qiáng)的?for?循環(huán)和?Autoboxing。?
          框架?中已經(jīng)添加了三個(gè)新接口(其中兩個(gè)是?java.util.concurrent?的一部分):Queue、BlockingQueue?和?ConcurrentMap。?
          已經(jīng)添加?了?Queue?的兩個(gè)具體實(shí)現(xiàn),此外,還添加了一個(gè)骨架實(shí)現(xiàn)。?
          已經(jīng)添加了?5?個(gè)模塊化?Queue?實(shí)現(xiàn)和一個(gè)?ConcurrentMap?實(shí)現(xiàn)。?
          提供了專(zhuān)用的?Map?和?Set?實(shí)現(xiàn)來(lái)同類(lèi)型安全枚舉一起使用。?
          已經(jīng)添加了專(zhuān)用的即寫(xiě)即復(fù)制(copy-on-write)的?List?和?Set?實(shí)現(xiàn)。?
          為了在大多數(shù)集合接口中添加動(dòng)態(tài)類(lèi)型安全而提供了包裝器實(shí)現(xiàn)。?
          提供了幾個(gè)算法用于操縱集合。?
          提供了一些方法來(lái)為數(shù)組計(jì)算散列代碼和字符串表示。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/xml/jaxp/index.html]Java?API?for?XML?Processing?(JAXP)[/url]單擊上面的鏈接獲取詳細(xì)信息或參閱?[url=http://jcp.org/en/jsr/detail?id=206]JSR?206[/url].?
          位操縱操作包裝器類(lèi)(Integer、Long、Short、Byte?和?Char)?現(xiàn)在支持通用位操縱操作,這些操作包括?highestOneBit、lowestOneBit、numberOfLeadingZeros、numberOfTrailingZeros、bitCount、rotateLeft、rotateRight、reverse、signum?和?reverseBytes。?
          Math?包Math
          -->[url=http://java.sun.com/j2se/1.5.0/docs/api/java/math/package-summary.html]java.math[/url]?包包含了下面的增強(qiáng)功能:?
          BigDecimal?類(lèi)已經(jīng)為固定精度浮點(diǎn)計(jì)算添加了支持。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=13]JSR?13[/url].?
          Math?和?StrictMath?庫(kù)包含雙曲線超越函數(shù)(sinh、cosh?和?tanh)、立方根和基于?10?的對(duì)數(shù)等。?
          十六進(jìn)制浮點(diǎn)數(shù)支持?——?為允許特定浮點(diǎn)值的精確和可預(yù)知的說(shuō)明,十六進(jìn)制表示法可用于浮點(diǎn)數(shù)的字面值,以及用于?Float?和?Double?中浮點(diǎn)數(shù)轉(zhuǎn)換方法的字符串。?
          Instrumentation?包新的?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/instrument/package-summary.html]java.lang.instrument[/url]?包提供了一些服務(wù),這些服務(wù)允許?Java?編程代理測(cè)試運(yùn)行在?Java?虛擬機(jī)上的程序。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/serialization/index.html]序列化[/url]已經(jīng)添加了支持來(lái)處理?1.5?版本中新增的枚舉類(lèi)型。序列化一個(gè)枚舉實(shí)例的規(guī)定不同于序列化一個(gè)“普通”可序列化對(duì)象的那些規(guī)則:枚舉實(shí)例的序列化表單只包括它的枚舉常量名和指出它的基本枚舉類(lèi)型的信息。反序列化行為也是不同的?——?類(lèi)信息用于查找相應(yīng)的枚舉類(lèi),并且為了獲取返回的枚舉常量,通過(guò)使用那個(gè)類(lèi)和接收的常量名來(lái)調(diào)用?Enum.valueOf?方法。?
          并發(fā)實(shí)用程序[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/package-summary.html]java.util.concurrent[/url]、[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/atomic/package-summary.html]?java.util.concurrent.atomic[/url]和[url=http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/locks/package-summary.html]?java.util.concurrent.locks[/url]?包提供了一個(gè)強(qiáng)大的、可擴(kuò)展的高性能線程處理實(shí)用程序框架,比如線程池和?Blocking?Queue。這個(gè)包使得程序員從需要手工制作這些實(shí)用程序中解放出來(lái),其方式與集合框架為數(shù)據(jù)結(jié)構(gòu)所做的非常相同。此外,這些包為高級(jí)并發(fā)編程提供了低級(jí)原語(yǔ)。參見(jiàn)?[url=http://jcp.org/en/jsr/detail?id=166]JSR?166?[/url].?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/vm/thread-priorities.html]線程優(yōu)先級(jí)[/url]線程優(yōu)先級(jí)處理已經(jīng)更改;參見(jiàn)上面的鏈接。??
          線程轉(zhuǎn)儲(chǔ)?API為了提供一種編程方式來(lái)獲取一個(gè)線程或所有線程的堆棧跟蹤,在?Thread?類(lèi)中添加了兩個(gè)新方法?——?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Thread.html#getStackTrace()]getStackTrace[/url]?和?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Thread.html#getAllStackTraces()]getAllStackTraces[/url]。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jmx/index.html]監(jiān)控和管理?[/url]這一版本的?J2SE?提供了一些重要的增強(qiáng)功能,用于監(jiān)控和管理?Java?應(yīng)用程序和?Java?虛擬機(jī)(JVM):?
          JMXTM?1.2?版本和?JMX?Remote?API?1.0?版本的?RMI?連接器?——?JMX?API?——?允許測(cè)試用于監(jiān)控和管理的庫(kù)和應(yīng)用程序。RMI?連接器允許遠(yuǎn)程訪問(wèn)這個(gè)規(guī)范。有關(guān)更多信息,請(qǐng)參見(jiàn)?[url=http://java.sun.com/j2se/1.5.0/docs/guide/jmx/index.html]JMX?文檔[/url]?和?[url=http://java.sun.com/products/JavaManagement/download.html]JMX[/url]?規(guī)范。?
          JVM?是使用?JMX?實(shí)現(xiàn)的。新的?[url=http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/package-summary.html]java.lang.management[/url]?包提供了用于監(jiān)控和管理?Java?虛擬機(jī)及它所運(yùn)行的操作系統(tǒng)的接口。它允許以本地的方式和遠(yuǎn)程的方式監(jiān)控和管理運(yùn)行中的?Java?虛擬機(jī)。?
          通過(guò)?JMX?進(jìn)行?out-of-box?管理?——?可以容易安排啟動(dòng)基于?JMX?技術(shù)的代理(“JMX?代理”),它可用于遠(yuǎn)程監(jiān)控和管理內(nèi)置的?Java?VM?規(guī)范或使用?JMX?提供的任何應(yīng)用程序規(guī)范。?
          通過(guò)?SNMP?對(duì)?Java?VM?規(guī)范進(jìn)行?out-of-box?管理?——?SNMP?代理只發(fā)布?[url=http://jcp.org/en/jsr/detail?id=163]JSR?163?-?Java?Platform?Profiling?Architecture[/url]?中定義的?Java?VM?規(guī)范的標(biāo)準(zhǔn)?MIB。通過(guò)這個(gè)?SNMP?代理發(fā)布其他的?MIB(比如應(yīng)用程序的那些?MIB)是沒(méi)有得到支持的。?
          集成庫(kù)
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/rmi/index.html]遠(yuǎn)程方法調(diào)用?(RMI)[/url]?RMI?已經(jīng)在下面幾個(gè)方面得到了增強(qiáng):?
          ·?動(dòng)態(tài)生成存根類(lèi)?——?這一版本在運(yùn)行時(shí)添加了動(dòng)態(tài)生成存根類(lèi)的支持,免去了需要使用?Java?遠(yuǎn)程方法調(diào)用(Java?RMI)存根編譯器?rmic?來(lái)為遠(yuǎn)程對(duì)象預(yù)生成存根類(lèi)。注意,仍然必須使用?rmic?來(lái)為遠(yuǎn)程對(duì)象預(yù)生成存根類(lèi),該遠(yuǎn)程對(duì)象需要支持運(yùn)行在早期版本的客戶端。?
          從?inetd/xinetd?啟動(dòng)?rmid?或者?Java?RMI?服務(wù)器?——?System.inheritedChannel?方法提供的一個(gè)新特性使應(yīng)用序程能夠獲得繼承自啟動(dòng)虛擬機(jī)(VM)的某個(gè)進(jìn)程的通道(例如?java.nio.channels.SocketChannel?或?java.nio.channels.ServerSocketChannel)。這種繼承的通道可用于服務(wù)單個(gè)傳入連接(例如?SocketChannel),或者接受多個(gè)傳入連接(例如?ServerSocketChannel)。因此,inetd?(Solaris(tm)?操作系統(tǒng))或?xinetd?(Linux)?啟動(dòng)的?Java?網(wǎng)絡(luò)應(yīng)用程序現(xiàn)在可以獲得從?inetd/xinetd?繼承到的?SocketChannel?或?ServerSocketChannel。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jdbc/index.html]Java?數(shù)據(jù)庫(kù)連接?(JDBC)[/url]J2SE?1.4?版本中引入的?[url=http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/RowSet.html]RowSet[/url]?接口是?[url=http://java.sun.com/j2se/1.5.0/docs/api/javax/sql/package-summary.html]javax.sql[/url]?包的一部分,它提供在組件間傳遞數(shù)據(jù)的輕量級(jí)方法。?
          作為開(kāi)發(fā)者的一種輔助,在這一版本中,已經(jīng)以可以使用?RowSet?對(duì)象的?5?種或更多種常見(jiàn)方式實(shí)現(xiàn)了?RowSet?接口(比如?JSR?114)。這些實(shí)現(xiàn)提供了一個(gè)開(kāi)發(fā)人員自由使用的現(xiàn)有標(biāo)準(zhǔn),或者開(kāi)發(fā)人員可以自由擴(kuò)展這一標(biāo)準(zhǔn)。?
          下面是?5?個(gè)標(biāo)準(zhǔn)實(shí)現(xiàn):?
          JdbcRowSet?——?用于封裝為使用?JDBC?技術(shù)而實(shí)現(xiàn)的結(jié)果集或者驅(qū)動(dòng)程序。?
          CachedRowSet?——?從它的數(shù)據(jù)源斷開(kāi)連接,并在除它正從數(shù)據(jù)源獲取數(shù)據(jù)或把修改的數(shù)據(jù)寫(xiě)回?cái)?shù)據(jù)源時(shí)之外,獨(dú)立地進(jìn)行操作。這使它成為一個(gè)輕量級(jí)容器,用于存儲(chǔ)它可在內(nèi)存中存儲(chǔ)的同樣多的數(shù)據(jù)。?
          FilteredRowSet?——?擴(kuò)展了?CachedRowSet,用于獲取數(shù)據(jù)的子集。?
          JoinRowSet?——?擴(kuò)展了?CachedRowSet,用于從多個(gè)?RowSet?對(duì)象中獲取?SQL?JOIN?數(shù)據(jù)。?
          WebRowSet?——?擴(kuò)展了?CachedRowSet,用于XML數(shù)據(jù)。它使用標(biāo)準(zhǔn)的?XML?Schema?來(lái)描述?XML?中的表格組件。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jndi/index.html]Java?命名和目錄接口TM?(JNDI)[/url]JNDI?提供了下面的新特性。?
          為了從目錄/命名服務(wù)訪問(wèn)全名,增強(qiáng)了?javax.naming.NameClassPair。?
          為?標(biāo)準(zhǔn)?LDAP?控制提供支持:管理參考控制(Manage?Referral?Control)、分頁(yè)結(jié)果控制和排序控制。?
          為?LDAP?名稱(chēng)的操縱提供了支持。?
          用戶接口
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/intl/index.html]國(guó)際化[/url]
          為了使用邏輯字體呈現(xiàn)多語(yǔ)言文本,2D?現(xiàn)在利用所有支持的書(shū)寫(xiě)系統(tǒng)的已安裝主機(jī)操作系統(tǒng)字體。例如,如果您在泰國(guó)語(yǔ)環(huán)境中,但已經(jīng)安裝了韓國(guó)語(yǔ)的字體,就可以呈現(xiàn)泰國(guó)語(yǔ)和韓國(guó)語(yǔ)。?
          在?Windows?2000/XP?中,AWT?現(xiàn)在使用?Unicode?API。因此它的一些文本組件可以處理文本,而不用受到?Windows?locale?設(shè)置的限制。例如,AWT?文本組件可以在梵文書(shū)寫(xiě)系統(tǒng)中接受和顯示文本,而不用關(guān)心?Windows?locale?的設(shè)置。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/sound/index.html]Java?聲音技術(shù)[/url]
          現(xiàn)在端口可在所有平臺(tái)上使用(RFE?4782900)。?
          現(xiàn)在?MIDI?設(shè)備?I/O?可在所有平臺(tái)上使用(RFE?4812168?和?RFE?4782924)。?
          在所有平臺(tái)上實(shí)現(xiàn)了優(yōu)化的直接音頻訪問(wèn)?(RFE?4908240?和?RFE?4908879)。在提供本機(jī)混合的系統(tǒng)上(如具有硬件混合的?Linux?ALSA、啟用的?Solaris?Mixer?和?Windows?DirectSound),默認(rèn)情況下啟用了它。?
          新的實(shí)時(shí)序列與所有?MIDI?設(shè)備一起工作,并允許無(wú)限地進(jìn)行傳送(RFE?4773012)。?
          sound.properties?配置文件允許選擇默認(rèn)設(shè)備(RFE?4776511)。?有關(guān)更多信息,請(qǐng)參見(jiàn)?MidiSystem?和?AudioSystem。?
          MidiDevices?可以查詢連接的接收器和傳送器(RFE?4931387,?MidiDevice.getReceiver?和?MidiDevice.getTransmitter?方法)。?
          AudioFormat、AudioFileFormat?和?MidiFileFormat?現(xiàn)在具有一些屬性來(lái)允許進(jìn)一步描述和限定格式?(RFE?4925767?和?RFC?4666845)。?
          一組易用的方法集允許更加容易地從?AudioSystem?檢索行(RFE?4896221)。?
          序列接口是用循環(huán)方法擴(kuò)展的,它可以在?MIDI?序列的特定部分進(jìn)行無(wú)縫循環(huán)。(RFE?4204105)。?
          Java?Sound?不再禁止?VM?退出(bug?4735740)。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/2d/index.html]Java?2DTM?技術(shù)[/url]添加的?2D?特性包括擴(kuò)展的?Linux?和?Solaris?打印機(jī)支持、用于從文件和流中創(chuàng)建字體的新方法和與?VolatileImages?和圖像的硬件壓縮有關(guān)的新方法。對(duì)文本呈現(xiàn)代碼的大量更改大大提高了它的強(qiáng)健性、性能和可伸縮性。其他性能工作包括在?Linux?和?Solaris?上使用?OpenGL?進(jìn)行硬件加速呈現(xiàn)(默認(rèn)情況下是禁用的)。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/imageio/index.html]圖像?I/O[/url]圖像?I/O?系統(tǒng)現(xiàn)在具有針對(duì)?BMP?和?WBMP?格式的閱讀器和編寫(xiě)器。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/awt/index.html]AWT[/url]1.5?版本提供了許多?AWT?增強(qiáng)功能和修補(bǔ)程序,其中包括一些客戶經(jīng)常要求的一些增強(qiáng)功能和修補(bǔ)程序。特別是新的?MouseInfo?類(lèi)使得可以決定桌面上鼠標(biāo)的位置。新的?Window?方法使得可以根據(jù)平臺(tái)來(lái)指定最近創(chuàng)建的窗體(或幀)的默認(rèn)位置。另一個(gè)窗口增強(qiáng)功能使得可以保證窗體(或幀)總是處在最上層(對(duì)于?Solaris/Linux?上的一些窗體處理器,這種特性是不能工作的)。在數(shù)據(jù)轉(zhuǎn)換方面,新的?DropTargetDragEvent?API?使得在拖動(dòng)過(guò)程中可以讓目標(biāo)訪問(wèn)傳送的數(shù)據(jù)。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/swing/index.html]Swing[/url]在?1.4.2?版本中,我們?yōu)?Swing?提供了兩種外觀:XP?和?GTK。但這沒(méi)有到此就停止,在?1.5?中我們提供了另外兩種外觀:Synth?——?可切換皮膚的外觀和?Ocean?——?針對(duì)?Metal?的新主題。除了外觀之外,我們已經(jīng)對(duì)?JTable?添加了打印支持,這使得可以容易地獲取?JTable?的漂亮打印副本。最后在七年后,我們使得?jFrame.add?等價(jià)于?jFrame.getContentPane().add()。?
          部署
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/deployment/enhancements-1.5.0.html]一般部署[/url]Pack200?是由?[url=http://jcp.org/en/jsr/detail?id=200]JSR?200[/url]?定義的新的針對(duì)?JAR?文件的超壓縮格式,它可以大大減小?Java?Webstart?應(yīng)用程序和?Java?插件?applet?中使用的?JAR?文件的下載大小。?
          要簡(jiǎn)要了解一般部署特性和增強(qiáng)功能,請(qǐng)單擊上面的“一般部署”鏈接。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jws/enhancements-1.5.0.html]Java?Web?Start?部署[/url]要簡(jiǎn)要了解?Java?Web?Start?部署的特性和增強(qiáng)功能,請(qǐng)單擊上面的鏈接。?
          工具和工具體系結(jié)構(gòu)
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/index.html]Java?虛擬機(jī)工具接口(Java?Virtual?Machine?Tool?Interface,JVMTI)?[/url]JVMTI?是開(kāi)發(fā)和監(jiān)控工具所使用的本機(jī)編程接口。它提供了一種方法,用于檢查在?Java?虛擬機(jī)(VM)中運(yùn)行的應(yīng)用程序的狀態(tài),并控制它的執(zhí)行。JVMTI?的設(shè)計(jì)目的是為需要訪問(wèn)?VM?狀態(tài)的全寬度工具提供?VM?接口,其中包括但不局限于下面這些工具:profiling、調(diào)試、監(jiān)控、線程分析和覆蓋分析等工具。?
          在下一個(gè)?J2SE?主要版本中,JVMTI?將替換現(xiàn)在否決的?JVMPI?和?JVMDI。?
          [url=http://java.sun.com/j2se/1.5.0/docs/guide/jpda/index.html]Java?平臺(tái)調(diào)試器體系結(jié)構(gòu)(Java?Platform?Debugger?Architecture,JPDA)[/url]JPDA?本身具有許多新特性,[url=http://java.sun.com/j2se/1.5.0/docs/guide/jpda/enhancements.html]JPDA?增強(qiáng)功能[/url]?頁(yè)詳細(xì)描述了這些特性。?
          已經(jīng)定義了?JDI?的一個(gè)只讀子集。這個(gè)子集可在特定的調(diào)試對(duì)象上使用,在該調(diào)試對(duì)象中,不可以執(zhí)行任何調(diào)試代碼(比如核心文件、掛起的進(jìn)程或在調(diào)試模式中尚未啟動(dòng)的進(jìn)程)。這個(gè)子集使得可以創(chuàng)建在像調(diào)試對(duì)象這樣的調(diào)試中使用的?JDI?連接器。?
          連接器和傳輸?shù)姆?wù)提供程序使得調(diào)試器供應(yīng)商或者甚至最終用戶可以創(chuàng)建自己的?JDI?連接器和傳輸,并把它們插入到?JPDA?的參考實(shí)現(xiàn)中。例如,可以提供一個(gè)連接器,讓它使用?SSL?在調(diào)試器和調(diào)試對(duì)象間進(jìn)行通信。?
          JDI?支持新語(yǔ)言特性(泛型、枚舉和?varargs)。?
          JPDA?的最低層?——?Java?虛擬機(jī)調(diào)試器接口(JVMDI)——?已經(jīng)被否決,在下一個(gè)?J2SE?主要版本中將刪除它。替代它的將是?Java?虛擬機(jī)工具接口(JVMTI)。這個(gè)更加通用的接口使得可以在調(diào)試的同時(shí)也執(zhí)行?profiling。當(dāng)前的?profiling?接口?——?Java?虛擬機(jī)?profiling?接口(Java?Virtual?Machine?Profiling?Interface,JVMPI)也被否決了,在下一個(gè)主要版本中也會(huì)刪除它。?
          JPDA?參考實(shí)現(xiàn)包括新的?JDI?連接器,它允許調(diào)試核心文件和掛起的進(jìn)程。?
          [url=http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/javac.html]Java?編譯器?(javac)[/url]編譯器選項(xiàng)包括:?
          -source?1.5?——?使得可以在源文件中使用特定于?1.5?的語(yǔ)言特性(默認(rèn)情況下是包括?-target?1.5?選項(xiàng)的)。?
          -?target?1.5?——?使得?javac?可以在庫(kù)和虛擬機(jī)中使用特定于?1.5?的特性。?
          -Xlint?——?使得?javac?能夠產(chǎn)生有關(guān)合法、但值得懷疑,而且通常是有問(wèn)題的程序結(jié)構(gòu)的警告消息。一個(gè)例子是聲明一個(gè)實(shí)現(xiàn)?Serializable?的類(lèi),但卻沒(méi)有定義?serialVersionUID。?
          -d32?——?指出?32?位的?Solaris?或?Linux?平臺(tái)。?
          -d64?——?指出?64?位?Solaris?或?Linux?平臺(tái)。

          凡是有該標(biāo)志的文章,都是該blog博主Caoer(草兒)原創(chuàng),凡是索引、收藏
          、轉(zhuǎn)載請(qǐng)注明來(lái)處和原文作者。非常感謝。

          posted on 2006-06-11 12:51 草兒 閱讀(845) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Java編程經(jīng)驗(yàn)談
          主站蜘蛛池模板: 吐鲁番市| 四川省| 长垣县| 洛阳市| 博爱县| 大同市| 察雅县| 当涂县| 凉城县| 海口市| 金寨县| 岚皋县| 依兰县| 延津县| 罗甸县| 城固县| 高清| 北辰区| 石景山区| 城市| 长阳| 棋牌| 屏东市| 北流市| 探索| 井研县| 蒙城县| 科尔| 石城县| 中超| 武宁县| 阳曲县| 浦北县| 娱乐| 明光市| 邛崃市| 高雄县| 永安市| 白水县| 鄂托克前旗| 梨树县|