規則:唯一、無參數、由 CLR 自動呼叫。觸發時機:
不同封閉型別 (List<int>、List<string>) 各有獨立靜態建構函式。
public class Node<T, V>
{
public T Add(T a, V b) { return a; } // 1
public T Add(V a, T b) { return b; } // 2
public int Add(int a, int b) { return a+b; } // 3 (一般方法)
}
Node<int, int> 使三個 Add 簽章相同,但呼叫 node.Add(2,11) 時優先匹配一般方法 (第 3 個)Node<string, int> 簽章不同,正常匹配原則:一般方法與泛型方法簽章相同時,一般方法優先 (覆蓋泛型方法)。
簽章識別規則同多載。
除類別,亦可用於方法、介面、結構、委派。
C# 泛型提供型別安全、效能提升、減少重複程式碼,語法優雅。雖根基於 C++ 模板,但透過兩階段編譯、中繼資料、約束等創新提升至新高度。未來版本將持續擴展至資料存取、在地化等領域。