踏入21世紀,Java圖書已經琳瑯滿目,但回首Java剛誕生的1996年,市面上幾乎找不到系統性的教材。當時唯有Sun工程師撰寫的《Hooked on Java》與《The Java Handbook》填補空白,但這些書動輒三四百頁,且預設讀者已具備面向對象編程基礎,對初學者極不友善。
同年,Cay Horstmann與Gary Cornell推出《Java核心編程》,以600餘頁零基礎教學、清晰易讀的風格,讓人想起Kernighan與Winston早期的程式設計經典。時至今日,第9版已分為兩卷:卷1「基礎」974頁,卷2「高級特性」更達1128頁,涵蓋Java 7所有特性,包括集合、泛型、並發等核心內容。

卷1開篇回顧Java歷史與設計哲學(健壯性、可移植性、多線程等),隨後提供精簡上手指南,含JDK與Eclipse安裝步驟,並附贈可視化Applet驗證環境。基本數據類型、語法、控制流均有詳盡說明,BigNumber、BigDecimal、BigInteger等高精度類別更獲專章講解。
書中對OOP的闡述堪稱典範。從UML基礎、直觀範例切入,循序漸進講解類與物件、建構子、類文件結構,末附「類設計提示」最佳實踐。繼承、介面、內部類等進階主題均配合Java實作說明,極大降低了從過程式語言(如C)轉型的門檻。
四章300頁專注Swing開發:核心元件、字型色彩、事件處理、佈局管理器、Applet與部署(瀏覽器、Java Web Start、JAR)。遺憾的是未涵蓋JavaFX——作為現代Java核心圖形庫,它理應納入基礎卷範疇。
異常章節涵蓋除錯技巧、日誌與除錯器使用。泛型章節清晰剖析這一令資深開發者也頭痛的主題,並介紹Java 7「Project Coin」的鑽石語法(<>)。集合框架部分詳述Collections與Maps、演算法,並簡述舊式Hashtable、Vector、Enumeration。
全書以108頁篇幅系統講解多線程:從「什麼是執行緒」起步,涵蓋執行緒狀態圖、同步機制、競態條件、java.util.concurrent套件、執行緒池、同步元件,並以SwingWorker探討UI回應性保障。將多線程前置於基礎卷是明智之舉——並發已成核心技能,不應歸類為「高級特性」。不過Streams與Readers章節被挪至卷2(3月出版),略感遺珠,因I/O同樣屬基礎範疇。
自1995年問世以來,Java在表達力與生態系上均長足發展。《Java核心編程》內容豐富卻不失可讀性,無論程式新手、跨語言遷移者,抑或資深開發者需桌邊參考書,皆是不可多得的經典之作。