2019年7月9日 范性特征

1.泛型是 通过参数化类型来实现在同一份代码上操作多种数据类型 的 技术 2.泛型增强了代码的可读性 3.泛型有助于实现代码的重用、保护类型的安全以及提高性能 4.我们可以创建泛型集合类 5.泛型实现了类型和方法的参数化 6.我们还可以对泛型类进行约束以访问特定数据类型的方法 7.关于泛型数据类型中使用的类型的信息可在运行时通过使用反射获取 8.类型定义时,将指定类型参数(Type Parameter,通常以T 表示),紧随类名,并包含在<>符号内 9.对于这种具有类型参数的类型,我们称其为:开放式类型;而对于为类型参数传入实际参数的类型,被称为:封闭式类型 10.struct 类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型。有关更多信息,请参见使用可空类型 11.class 类型参数必须是引用类型,包括任何类、接口、委托或数组类型 12.new() 类型参数必须具有无参数的公共构造函数。当与其他约束一起使用时,new() 约束必须最后指定 13.<基类名> 类型参数必须是指定的基类或派生自指定的基类子类 14.<接口名称> 类型参数必须是指定的接口或实现指定的接口。可以指定多个接口约束。约束接口也可以是泛型的 15.在C#2.0中,方法可以定义特定于其执行范围的泛型参数 16.泛型方法,提供了更加多变的灵活性。泛型方法可以存在于泛型类,也可以在于非泛型类中。你可以将类型参数作为某个方法的参数、返回值、或者局部变量,该类型参数可能并不被整个类所需要,而更明确的用于某个方法 17.在.NET 框架类库中的泛型接口,还包括 ICollection、Icomparable、Icomparer、IDictionary等等 18.List 对应ArrayList集合类 SortedList 对应SortedList集合类 Queue 先进先出的集合类 Stack 后进先出的集合类 Collection 自定义泛型集合的基类 Dictionary 对应于Hashtable集合类 19.类中的静态类型,无论被使用多少次内存中都只存在一个。静态构造函数只会执行一次。 在泛型类中,T类型不同,每个不同的T类型,都会产生一个不同的副本,所以会产生不同的静态属性、静态构造函数
原文地址:https://www.cnblogs.com/hanzhuopeng/p/11166216.html