C# Vererbung: implementiert + erweitert
Ist es möglich, etwas zu tun, dass in C#
:
public class MyClass implements ClassA extends ClassB
{
}
Ich brauche dies, weil: ich habe zwei Klassen ein, von denen ein Interface
was ich werde die Umsetzung in meiner Klasse, aber ich möchte auch den Einsatz von Methoden aus einer anderen Klasse, das macht einige Sachen, die ich möchte in meiner Klasse.
- Ja, Sie können Erben von einer Klasse und eine beliebige Anzahl von Schnittstellen implementieren.
- Was wäre der Unterschied zwischen der Verwendung von
ClassA
im Gegensatz zuClassB
? Sie möchten gleich beide verwenden als Basis-Klassen, richtig? - Aber wie mache ich es? Ich konnte Sie nicht finden, die richtige syntax zu verwenden...
- public class MyClass : ClassA, IMyInterface { }
- Klasse A ist eine Schnittstelle, es hat keine Implementierung. Ich die Umsetzung meiner MyClass, und classB ist eine aktuelle Klasse mit code, ich möchte meiner Klasse zu Erben.
- oh, ich wusste nicht, dass Sie das tun könnten. Das beantwortet meine Frage. Danke.
- Ah. In anderen Worten,
ClassA
undClassB
sollte eigentlichInterfaceA
undClassA
bzw. - du hast Recht. Ich hätte mehr klar.
Du musst angemeldet sein, um einen Kommentar abzugeben.
C# nicht unterstützt Mehrfachvererbung. Sie stammen aus einer Klasse und die Verwendung von Schnittstellen für Ihre anderen Bedürfnisse.
Syntax:
Versuchen, diese:
Denken Sie daran, Sie können nicht Erben von zwei Klassen zu bestimmten Klasse, es könnte nur eine Klasse und beliebig viele Schnittstellen.
Sollte es so Aussehen:
ClassB ist die Basisklasse.
InterfaceA ist ein Schnittstelle.
Können Sie nur erweitern, eine Basis-Klasse, aber man kann viele Schnittstellen implementieren.