[修飾符] 返回類型 方法名([參數列表]) {
// 方法體
return 值; // void 可省略
}
修飾符:public/private/protected (訪問控制)、static (類方法)、final (不可覆寫)、synchronized (線程同步)、native (本地方法)。
| 類型 | 關鍵字 | 訪問語法 | 典型用途 |
|---|---|---|---|
| 實例方法 | 無 static | obj.method(args) | 操作對象狀態 |
| 類方法 (靜態) | static | ClassName.method(args) | 工具方法、工廠方法 |
public class Person {
private String name; // 隱藏實現
private int age;
// Getter
public String getName() { return name; }
public int getAge() { return age; }
// Setter (可加驗證邏輯)
public void setName(String name) {
if (name != null && !name.trim().isEmpty())
this.name = name;
}
public void setAge(int age) {
if (age >= 0 && age <= 150) this.age = age;
}
}
優點:控制數據合法性、隱藏內部表示、便於後續添加邏輯 (如延遲加載、事件通知)。
this(...) 調用本類其他構造器 (必須為首行);super(...) 調用父類構造器 (子類構造器首行隱式調用 super())。
public class Demo {
private int x;
{ System.out.println("實例初始化塊"); } // 每次 new 都執行
static { System.out.println("靜態初始化塊"); } // 類加載時執行一次
public Demo() { this(0); System.out.println("無參構造"); }
public Demo(int x) { this.x = x; System.out.println("有參構造 x=" + x); }
}
private,按需暴露 Getter/Setter。calculateTotal)。static 方法,避免狀態耦合,難以測試。