1.17 C# 泛型

来源:互联网 发布:电脑相册制作软件 编辑:程序博客网 时间:2024/06/06 01:29
day 17 泛型
1,C#中的泛型能够将类型作为参数来传递,即在创建类型时用一个特定 的符号如“T”来作为一个占位符,代替实际的类型,等待在实例化时 再用一个实际的类型来代替:
2,泛型类格式:
修饰符 class 类名<泛型类型参数> { 类成员}
访问修饰符 返回值类型 方法名<泛型类型参数>(参数列表)
{方法体;}

3,优点
1. 使用泛型可以的重用代码,保护类型的安全以及提高性能
2. 降低强制转换或装箱操作的成本和风险
3. 可以对泛型参数进行限定以访问特定数据类型的方法
4,泛型的约束
在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参 数的类型种类施加限制。 如果客户端代码尝试使用某个约束所不允 许的类型来实例化类,则会产生编译时错误。 这些限制称为约束。
where关键字:约束.
1. where T:struct :表示泛型T是值类型(小数,整数,char,bool, struct)
2. where T:class :表示泛型T是引用类型
3. where T:new() :表示这个泛型具有一个无参数的构造方法,如果有 多个约束,new()必须放在最后
4. where T:基类名 :表示这个泛型是该基类或者其派生类
5. where T:接口名 :表示泛型是实现了该接口的类型
原创粉丝点击