根據 Sun Microsystems 發布的 Java 白皮書,Java 語言具備以下 11 項關鍵特性,奠定了其在企業級開發中的霸主地位:
Java 的語法設計大幅簡化了 C++ 的複雜特性(如指標、多重繼承、運算子多載等),同時保留了物件導向的核心優勢。基礎解釋器與核心類庫僅需約 40KB,加上標準庫與執行緒支援約 125KB,極適合嵌入式裝置與資源受限環境。
Java 核心類庫內建強大的 TCP/IP 協議族支援,應用程式可透過 URL 輕鬆存取遠端物件。Servlet 技術的出現更讓 Java 成為伺服器端開發的首選,主流 Web 伺服器(Tomcat、Jetty、WebLogic、WebSphere)皆完整支援 Servlet 規範。
Java 採用單一繼承 + 介面機制,所有類別隱含繼承自 java.lang.Object。封裝、繼承、多型三大特性貫穿始終,強制將資料與行為封裝於物件內部,透過介面契約進行互動,大幅提升程式碼復用性與維護性。
Java 採用強型別檢查、自動記憶體管理(垃圾回收)、例外處理機制,編譯期與執行期雙重防護,有效杜絕記憶體洩漏、野指標、緩衝區溢位等 C/C++ 常見災難。
針對網路分散式環境設計的安全模型:類別載入器隔離本地與遠端程式碼、位元組碼驗證器防範惡意代碼、安全管理員精細控制系統資源存取權限。歷經 20 多年實戰考驗,Java 在防毒、防攻擊方面表現優異。
「一次編寫,到處執行」的基石:Java 編譯器產生與平台無關的位元組碼,由 JVM 針對特定硬體/作業系統進行解釋執行或即時編譯(JIT),實現跨平台無縫遷移。
基本資料型別大小、運算行為在規範中嚴格定義(如 int 永遠 32 位元有號整數),消除 C/C++ 跨平台時的資料型別差異困擾。
語言層面內建執行緒支援(Thread 類別、synchronized 關鍵字、java.util.concurrent 套件),將複雜的併發控制交由 JVM 與底層 OS 處理,是 Java 成為高效能伺服器端語言的關鍵原因之一。
Applet 早期推動瀏覽器端豐富應用;Servlet/JSP 則佔據伺服器端動態網頁生成主導權,構建完整的 Java Web 生態系。
new 關鍵字實例化出具體物件。Object 根類別。use-a 依賴、has-a 聚合/組合、is-a 繼承。善用組合優於繼承,降低耦合度。new 使用。可多載、可鏈式呼叫 this(...),確保物件出生即合法。return、不可被繼承但可被子類別透過 super(...) 呼叫。java.lang、java.util、java.io、java.net 等形成分層命名空間,避免命名衝突。class Child extends Parent 體現 is-a 關係。equals() 比較邏輯相等、toString() 提供人類可讀表示、hashCode() 支援雜湊容器、getClass() 取得執行期型別資訊。ArrayList<T> 等集合框架實現型別安全與程式碼復用雙贏。java.lang.reflect 套件在執行期檢視/操作類別結構,支援框架自動化、序列化、依賴注入等進階場景。ActionListener、Runnable 等介面實現事件驅動與非同步程式設計。掌握這 30 個概念後,建議配合 JDK 官方文件 深入研究核心類庫,實作小專案驗證理解。記住:概念是地圖,程式碼才是領土,多寫、多重構、多閱讀優秀開源專案原始碼,方能內化為真正實力。