Frage ist sehr kurz, aber ich habe keine Lösung gefunden.Override Overlapped-Methode
Angenommen wir die Klassenhierarchie haben
public abstract class A
{
public virtual string Print() { return "A"; }
}
public class B : A
{
public virtual new string Print() { return "B"; }
}
public class C : B
{
public override string Print() { return "C"; }
}
Ist es möglich, A.Print in C-Klasse außer Kraft zu setzen? Ich habe versucht, es als explizite Schnittstellenimplementierung zu tun:
string A.Print() { return "C"; }
aber hier bekomme ich eine Fehlermeldung:
'A' in explicit interface declaration is not an interface
Ich denke, es ist gar nicht möglich, würde aber zu schätzen wissen alle zusätzlichen Informationen empfangen
Ihre Frage ist markierte sowohl C# als auch CIL. Möchtest du das in C# machen oder bist du offen dafür C in CIL zu schreiben? – svick
@svick, weil ich nicht sicher bin, ob es in C# oder IL möglich ist oder nicht, also sieh dir Brians Antwort an. Jetzt bekommen Sie, warum ich Cil-Tag zu der Frage hinzugefügt :) –