文章來源:網路作者:supertoto(翻譯)/CSDN.Net
到了2003的年末,J2SE1.5的beta版本就將發布了。這次發布和現在已經發布的J2SE1.4的兩個更新1.4.1和1.4.2都如2003年的JavaOne大會預期的發布。如果你沒有參加這次大會,或者想重新回顧一下,那麼以下就是這次大會的簡短內容。
J2SE 1.4.1 and 1.4.2 Releases
當1.4.1(開發代號「Hopper」)在2002年9月發布以及它的後續版本1.4.2(開發代號「Mantis」)在2003年1月如期發布的時候,已經修復了超過4000個的bug ,並且還在繼續的修復中。
在J2SE1.5的新功能中,將添加一些眾人期待已久的功能,例如對Itenium CPU的完全支援;Swing的用戶將看到兩個全新的內建Look & Feels,一個是Windows XP風格,一個GTK風格;同時啟動時間上也有改進。
在伺服器端的增強主要包含了兩個新增的GC,一個平行標記清掃演算法(concurrent mark and sweep algorithm)和類似年輕空間收集(parallel young space collector)。這兩個新的GC能透過編譯的參數來呼叫:-XX:+UseConcMarkSweepGC 和-XX:+UseParallelGC。
接下來,如何運用這些參數來調整系統的最佳效能就是我們在J2SE1.5中需要學習和理解的了。
J2SE 1.5 Release
J2SE 1.5(開發代號「Tiger」)是Java平台和語言上的重要修改,目前主要包括了15個JSR的請求和其他一些類似的更新。這次的Release主要關注於幾個關鍵的主題:主要是品質,監視和管理,性能和可擴展性,輕鬆的開發以及桌面客戶端。
Ease of Development(輕鬆的開發)
你可能已經聽過了關於減輕開發難度而做的Java語言上的修改。這次J2SE根據JSR的要求實現以下幾個JSR:JSR 201 包含了4個修改;JSR 175的核心是支援元資料(metadata),而JSR 14則規範了泛型。
元資料功能提供了聲明式的開發,並且取代了一些工具的程式碼產生和維護功能。泛型提升了無需手動轉型(manual casting)的程式碼復用,通常manual casting都會帶來類型安全性上的一些問題。
另外的四個修改分別是:
用for迴圈來遍歷容器(Collection 類型),而不需要明確的宣告容器的迭代器(Iterator);
枚舉型別提供了超越類似final static int的,增強的型別安全性;
當在泛型中使用基本資料型別(Primitive Types)的時候提供自動裝箱(autoboxing)功能(原來的泛型中是不能使用基本型別的);
引入了靜態常數(static constants)類別改進顯式的共享一個靜態資料;
為了實現輕鬆的開發,除了語言上的修改之外,還有一些額外的東西,例如一些懷念printf函數的會發現它又回來了;一個新的並發工具(在JSR 166中提及)將使得多線程編程變的更加簡單輕鬆。
Scalability and Performance(可擴展性和效能)
J2SE 1.5版本將承諾改進可擴展性和效能,尤其是在啟動時間和記憶體印記(memory footprint)上,將使得用戶能以最快的速度發布一個應用程式。從JSR 163上將實現內建的效能工程(Performance ergonomics)和個功能強勁的API profile工具。
Monitoring and Manageability(監視與管理)
監視和管理是Tiger中的一個主要特徵。那些在J2EE平台上使用JMX的開發者將非常開心的看到這樣的特性能在J2SE中實現。透過對JVM的監視,將允許對已發布的應用程式健康性的完全檢查,包括對底層記憶體洩漏檢測,錯誤處理甚至是API 堆疊追蹤(stack trace)的監視。
Core XML Support(核心的XML支援)
J2SE 1.5的介紹修改為XML的核心平台,表示Java的核心API將包含了XML1.1,SAX 2.0和DOM Level3。 Web service方面的API,JAX-RPC,和JAXB將繼續出現在Web Service的套件中,在以後的新版本中這些API將會被加入到核心API中。
Desktop Client(桌面用戶端)
最後一個重點的新功能是桌面用戶端。這將帶來幾個內建的新的Look & Feels支持,並且增強了對皮膚(skins)的支持。除了啟動速度和記憶體印記的增強,桌面開發者又多了幾個值得期待的新功能。
Unicode 3.1 Support(對Unicode 3.1的支援)
32位元的代理字元(surrogate character)支援將會很謹慎的加入到新的版本中,所以1.5版本將仍然使用16位元的char類型。
New IO Support(新的IO支援)
新版本將提供對非同步IO的支持,並且支援在平台中適當的地方開拓更深入的使用這些API。
有了J2SE 1.4.2和J2SE1.5,Java的開發者們將擁有一個令人興奮的一年。