C# 关于协变逆变之一张图讲明白
把一个子类泛型约束交给父类是协变(out 关键字)
把一个父类泛型约束交给子类是逆变(逆变也是为了安全)(in 关键字)
备注:只是通过关键字让代码编译阶段不报错,实质上在用的时候仍然是 “子类转父类” 这一原则
C# 关于协变逆变之一张图讲明白
把一个子类泛型约束交给父类是协变(out 关键字)
把一个父类泛型约束交给子类是逆变(逆变也是为了安全)(in 关键字)
备注:只是通过关键字让代码编译阶段不报错,实质上在用的时候仍然是 “子类转父类” 这一原则