C# 协变逆变

协变

  1.定义接口时泛型参数T用out修饰,声明泛型接口,实现指向泛型参数的子类

  2.泛型参数T只能当方法的返回值,不允许当方法入参,否则就会出现实现时指向了子类1,但是方法入参却使用了子类2,虽然都继承自父类,但是却没有使用明确指向的子类1

 

逆变

  1.定义接口时泛型参数T用in修饰,声明泛型接口,实现指向泛型参数的父类

  2.泛型参数T只能当方法的入参,不允许当方法的返回值,如果允许的话那么就会出现返回参数的话可以是任意子类,而实际要求的泛型参数是父类

C# 协变逆变

上一篇:云维 - 灾备存储云端管控新体验


下一篇:如何处理iOS中照片的方向