Hallo Leute,
folgender Code
Code:
class A
{
public virtual A Foo()
{
return new A();
}
}
class B: A
{
public override B Foo()
{
return new B();
}
}
wirft den Fehler
Code:
'Covariant.Program.B.Foo()': return type must be 'Covariant.Program.A' to match overridden member 'Covariant.Program.A.Foo()' (CS0508)
Sollte das die Kovarianz nicht zulassen? Ich meine mich erinnern zu können, dass sowas in Java geht.