Java 的 import 關鍵字引入的是「套件」,它是管理命名空間的核心機制。透過套件,開發者可以將相關類別組織成邏輯單元,避免類別名稱衝突,特別是在網路環境下類別動態載入的情境。
每個 Java 原始碼檔案稱為「編譯單元」,副檔名為 .java。編譯單元可包含一個 public 類別(檔名必須與類別名相同),以及多個非 public 的輔助類別。編譯後每個類別產生獨立的 .class 檔案,這與傳統編譯-連結模式不同:Java 直接執行 .class 檔案序列,可打包成 JAR 檔案部署。
package mypackage;
public class MyClass { /* ... */ }
package 敘述必須是非註解的第一行程式碼。使用者可透過 import mypackage.*; 或完整名稱 mypackage.MyClass 使用。套件名稱慣例全小寫。
類別成員名稱天然隔離(同名方法不衝突),但類別名稱本身可能衝突。套件機制將全域命名空間切分,確保即使網路上有無數開發者撰寫同名類別,也能透過套件名稱區分。這對「網路友善」程式設計至關重要。
package 敘述)import 簡化代碼,但需注意同名類別衝突套件不只是組織代碼的工具,更是 Java 跨平台、網路化特性的基石,掌握其運作機制能避免大量部署與維護上的隱憂。