Один компилируется
Код: Выделить всё
class C {
public virtual object Method2() => throw new NotImplementedException();
}
class D : C {
public override string Method2() => throw new NotImplementedException();
}
Код: Выделить всё
interface A {
object Method1();
}
class B : A {
public string Method1() => throw new NotImplementedException();
}
Как ковариантные типы возврата работают в C# 9.0 и почему они не работают с интерфейсами?