partial 部分類型是 C# 2.0 引入的語言特性,允許將單一類別、結構或介面的定義**拆分為多個部分**,分別實作於不同的原始碼檔案中。編譯器在編譯時會自動將所有部分合併為完整的型別定義,這是純編譯時期的語言層面處理,**不影響任何執行機制**。
.Designer.cs) 與開發者手寫邏輯分離/// 定義 MyClass 的第一部分
public partial class MyClass
{
public void ReturnString() { }
}
/// 定義 MyClass 的第二部分
// 此處可省略 public,因第一部分已宣告
partial class MyClass
{
public int PartialValue;
}
class Program
{
static void Main(string[] args)
{
// 實例化時,MyClass 已自動合併兩個部分
MyClass obj = new MyClass();
obj.PartialValue = 10; // 來自第二部分的欄位
obj.ReturnString(); // 來自第一部分的方法
}
}
public partial class Program
{
static void Main(string[] args) { }
}
partial class Program
{
public void Test() { }
}
下一篇將深入探討: