不要被「Java SE 6 Update 10」這個平淡的版本號誤導。雖然按照慣例,更新版本(Update Release)僅修改版本號的第四位(如 1.6.0_10),且不允許新增、刪除或修改任何公共 API,僅限於修復 Bug,但 6u10 卻打破了這一慣例的框架——它在不變更公共 API 的前提下,引入了多項令人矚目的新特性,大幅推進了 Java 部署、啟動效能與使用者體驗的邊界。
Java 程式一旦進入「正常運行」狀態,向來以穩定、可靠、快速著稱。然而,歷史包袱讓「進入正常運行」的過程充滿挑戰:
Java SE 6u10 正是針對上述痛點設計,並在不修改公共 API 的原則下,提前交付了原本需等待 Java SE 7 才能見到的改進。

圖 1:JRE 體積對比(單位:MB)
傳統 JRE 包含 Swing、AWT、ImageIO、SQL、CORBA、RMI、XML、XSLT 等數十種 API,隨版本迭代體積持續增長。Java Kernel 採用「核心+按需下載」架構:使用者僅需下載約 4-5 MB 的小型安裝程式(Kernel),即可啟動典型 Swing 程式或 Applet;其餘組件在後台靜默下載並自動組裝,實現「零感知」的完整 JRE 體驗。

圖 2:Kernel 安裝包體積對比(單位:MB)
6u10 預設啟用全新的 Java Plug-in 實作(支援 Firefox 3 與 Internet Explorer)。其核心突破在於:Applet 現在運行於瀏覽器外部的獨立進程中。這意味著:
新一代 Plug-in 的優勢總結:
部署工具包(deployJava.js)解決了 JRE 偵測與安裝的歷史難題:
<script src="https://java.com/js/deployJava.js"></script>
<script>
deployJava.runApplet({
codebase: "https://www.example.com/applets/",
archive: "ExampleApplet.jar",
code: "Main.class",
width: "320",
height: "400"
}, null, "1.6");
</script>

圖 3:Metal 風格的 SwingSet3

圖 4:Nimbus 風格的 SwingSet3
Nimbus 基於 Synth 合成架構,全面採用 Java 2D 向量繪圖,無需靜態位圖,體積僅 56 KB,支援任意解析度縮放。雖然為相容性 Metal 仍是預設風格,但啟用 Nimbus 極其簡單:
// 程式碼中設定
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
// 命令列設定
-Dswing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel
// 永久設定(swing.properties)
swing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel
過去版本控制與 Pack200 壓縮需要伺服器端 Servlet 配合,導致普及率低。6u10 起,無需任何專用伺服器支援,僅需在 JNLP 或 Applet 標籤中添加:
<property name="jnlp.packEnabled" value="true"/>
或
<param name="java_arguments" value="-Djnlp.packEnabled=true"/>
即可啟用版本化下載與 Pack200 壓縮,極大降低部署門檻。