南浔建设局网站,加强政务门户网站建设,核酸检测利润6700亿,备案中的网站名称1 internal sealed class GenericTypeThatRequireAnEnumT2 {3 public static int age 12; //该 static 字段在不同的封闭类型之间是独立不共享的4 5 //静态构造器针对每个封闭类型都会执行一次#xff0c;泛型类型定义静态构造器的目的就是为了保证传递的类… 1 internal sealed class GenericTypeThatRequireAnEnumT2 {3 public static int age 12; //该 static 字段在不同的封闭类型之间是独立不共享的4 5 //静态构造器针对每个封闭类型都会执行一次泛型类型定义静态构造器的目的就是为了保证传递的类型实参满足特定的条件6 //静态类型构造器只能是私有的不能添加访问权限修饰符并且是由 CLR 自动调用的7 static GenericTypeThatRequireAnEnum()8 {9 Console.WriteLine(T type is : {0}, typeof(T).Name);
10 if (!typeof(T).IsEnum)
11 {
12 throw new ArgumentException(T must be an enumerated type);
13 }
14 } 使用方式: 1 enum eEnum1 { }
2
3 enum eEnum2 { }
4
5 GenericTypeThatRequireAnEnumeEnum1 tmp1 new GenericTypeThatRequireAnEnumeEnum1();
6 GenericTypeThatRequireAnEnumeEnum1.age 153;
7 GenericTypeThatRequireAnEnumeEnum2 tmp2 new GenericTypeThatRequireAnEnumeEnum2();
8 Console.WriteLine(GenericTypeThatRequireAnEnumeEnum2.age);
9 //GenericTypeThatRequireAnEnumint tmp3 new GenericTypeThatRequireAnEnumint(); //这句会报异常,因为类型实参不是每句类型 运行结果: 转载于:https://www.cnblogs.com/luguoshuai/p/10293421.html