public static void Show() { // 使用不同的类型实参来实例化泛型 GeneriWithStaticField <int> .field = "一"; GeneriWithStaticField <string> .field = "二"; GeneriWithStaticField <Guid> .field = "三"; // 对于非泛型参数,此时field只会有一个值,每次赋值都会覆盖原来的值 TypeWithStaticField.field = "非泛型类静态字段一"; TypeWithStaticField.field = "非泛型类静态字段二"; TypeWithStaticField.field = "非泛型类静态字段三"; TypeWithStaticField.PrintField(); // 证明每个封闭类型都有一个静态字段 GeneriWithStaticField <int> .PrintField(); GeneriWithStaticField <string> .PrintField(); GeneriWithStaticField <Guid> .PrintField(); }
static void Main(string[] args) { // 实例化泛型实例 TypeWithStaticField <int> .field = "一"; TypeWithStaticField <string> .field = "二"; TypeWithStaticField <Guid> .field = "三"; // 实例化非泛型实例 NoGenericTypeWithStaticField.field = "非泛型静态字段一"; NoGenericTypeWithStaticField.field = "非泛型静态字段二"; NoGenericTypeWithStaticField.field = "非泛型静态字段三"; //输出 NoGenericTypeWithStaticField.OutField(); TypeWithStaticField <int> .OutField(); TypeWithStaticField <string> .OutField(); TypeWithStaticField <Guid> .OutField(); Console.ReadKey(); }