相关疑难解决方法(0)

为什么"Covariance"和"Contravariance"的概念在实现接口方法时适用?

用例是这样的:

public class SomeClass : ICloneable
{
    // Some Code

    // Implementing interface method
    public object Clone()
    {
        // Some Clonning Code
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我的问题是,如果我们考虑协方差和反演的Funda,为什么不能使用"SomeClass(因为它是从对象派生的)"作为Clone()方法的返回类型

有人可以解释一下这个实现Microsoft ????的原因

.net c# covariance contravariance

7
推荐指数
2
解决办法
840
查看次数

标签 统计

.net ×1

c# ×1

contravariance ×1

covariance ×1