關鍵:在類別名稱後加 <T, S> 宣告型別參數,成員可直接使用:
using System;
using System.Collections.Generic;
using System.Text;
namespace GenericTest
{
class Program
{
static void Main(string[] args)
{
// 以 string, int 實例化
Test t = new Test("SHY520", 22);
t.SetValue();
}
}
///
/// 定義泛型類別,兩個型別參數 T, S
///
public class Test
{
private T name;
private S age;
public Test(T Name, S Age)
{
this.name = Name;
this.age = Age;
}
public void SetValue()
{
Console.WriteLine(name.ToString());
Console.WriteLine(age.ToString());
}
}
}
輸出:
SHY520
22
型別參數 T、S 直接用於欄位、建構函式參數、方法內部,編譯期即完成型別檢查。