class MyClass
{
public static string StaticMethod() => "Static";
public string InstanceMethod() => "Instance";
}
// 呼叫
MyClass.StaticMethod(); // 透過類別名
new MyClass().InstanceMethod(); // 透過實例
靜態方法無 `this`,不可存取實例成員。
class MyClass
{
public int Field1; // 實例欄位,預設 private
public static int StaticField; // 靜態欄位,屬於類別
public const int ConstField = 2008; // 編譯期常數
public readonly int ReadonlyField; // 執行期唯讀
public MyClass() => ReadonlyField = 2010; // 唯讀欄位只能在宣告或建構函式指派
}
| 欄位類型 | 透過類別名 | 透過實例 | 可寫性 |
|---|---|---|---|
| 實例欄位 | ❌ | ✅ | 可讀寫 |
| 靜態欄位 | ✅ | ✅ (不建議) | 可讀寫 |
| const | ✅ | ❌ | 唯讀 (編譯期) |
| readonly | ❌ | ✅ | 唯讀 (執行期) |