C# 抗变与协变的理解

我们知道 方法的参数是协变的:

void display(shape o)

 如果类Rectangle 继承于shape类,那我们可以给该方法传入Rectangle类的实例.

而方法的返回类型是抗变的,当方返回一个shape类型时,我们不能把他赋值给一个rectangle类型.

(在这儿 子类当做父类使用,而父类不能当做子类使用)

原文地址:https://www.cnblogs.com/qingtianMo/p/4929266.html