建構函式是類別中特殊的方法,使命是在物件實例化之前執行初始化邏輯。
| 特性 | 建構函式 | 一般方法 |
|---|---|---|
| 命名 | 必須與類別名稱相同 | 自訂名稱 |
| 執行時機 | new ClassName() 時自動執行 | 實例化後手動呼叫 |
| 回傳型別 | 無(甚至不可寫 void) | 需指定 |
若類別未定義任何建構函式,編譯器自動產生一個無參數的預設建構函式(不可見但存在)。
可定義多個參數不同的建構函式,滿足不同初始化需求:
public class Program
{
private Program() { Console.WriteLine("無參數"); }
public Program(string a) { Console.WriteLine("字串參數: " + a); }
public Program(int b) { Console.WriteLine("整數參數: " + b); }
public Program(string a, int b) { Console.WriteLine($"雙參數: {a}, {b}"); }
static void Main()
{
new Program();
new Program("123");
new Program(123);
new Program("123", 123);
Console.Read();
}
}
輸出將依呼叫順序顯示對應訊息,展示多載解析機制。