| 修飾符 | 存取範圍 |
|---|---|
public | 所有類別皆可存取 |
private | 僅同一類別內可存取 |
protected | 同類別、子類別、同套件 |
| 預設 (package-private) | 同套件內可存取 |
目的:限制屬性與方法的存取範圍,實現資訊隱藏。
依資訊隱藏原則組織資料。兩大特徵:資訊集中、資訊隱藏。
私有屬性配合 Getter/Setter 的優勢:
// 靜態區塊:類別載入時執行一次
static { }
// 實例化區塊:每建立一個物件執行一次,在 super() 之後執行
{ }
物件實例化完整順序:
super(),控制權轉至父類別建構子super() 之後、其他語句之前 → 執行實例初始化區塊super() 之後的語句外部類別名$內部類別名.class。掌握存取控制、封裝技巧、初始化區塊執行順序與內部類別機制,是撰寫健壯、可維護 Java 程式的關鍵進階技能。