[Clr via C#读书笔记]Cp12泛型

Cp12泛型

Generic;

特点

  • 源代码保护
  • 类型安全
  • 清晰代码
  • 更佳性能

Framework中的泛型

System.Collections.Generic;
开放类型,封闭类型;每个封闭类型都有自己的静态成员;

泛型类型和继承

新的类型派生自泛型类型派生的那个类;实参指定和派生层次没有关系;

泛型的同一性

使用using和局部隐式类型来解决;

代码爆炸

了解就可以了

泛型接口

拥有泛型的那些好处

泛型委托

类似泛型接口

委托和接口的逆变和协变泛型类型实参

不变量=泛型类型参数不能更改;
逆变量=泛型参数可以从一个基类更改该类的派生类;in;参数
协变量=泛型类型参数可以从一个派生类更改为它的基类,out;返回类型
可以提高接口的灵活性;

泛型方法

泛型方法可以定义在泛型类当中,使用泛型类的T,也可以自己定义自己的T,甚至在非泛型类当中定义它;

约束

约束其实可以理解成尽可能的提高接口的具体性,从而可以使用到更多的这种具体性的操作;

原文地址:https://www.cnblogs.com/newlifechou/p/8166243.html