Inhaltsverzeichnis
Was ist Vererbung in C#
Wie funktioniert die Erbschaft in C#
Vererbungsarten in C#
Abschluss
Was ist Vererbung in C#
In C# mit der Vererbung kann eine Klasse die Eigenschaften und Methoden einer anderen Klasse einnehmen oder erben. Mit anderen Worten, es ermöglicht die Erstellung einer neuen Klasse, die auf einer vorhandenen Klasse basiert, die als Basisklasse oder Superklasse bezeichnet wird. Eine Klasse, die nach der Einnahme der Eigenschaften einer Basisklasse gebildet wird, wird genannt eine abgeleitete Klasse oder Unterklasse.
Diese abgeleitete Klasse in C# erfordert nicht nur Eigenschaften der Basisklasse, sondern kann auch seine eigenen einzigartigen Funktionen hinzufügen.
Wie funktioniert die Erbschaft in C#
In C#wird die Erbschaft durch den Einsatz des Dickdarms erreicht (:) :) Symbol. Der Basisklassenname wird nach dem Dickdarm definiert und von der abgeleiteten Klasse angegeben.
Das Folgende ist die Syntax zum Erstellen einer abgeleiteten Klasse, die Eigenschaften aus der Basisklasse enthält:
Klassenableitklasse: BaseclassHier in diesem Code, Abgeleitete Klasse ist der Name der abgeleiteten Klasse und Basisklasse ist der Name der Basisklasse. Der : Das Symbol zeigt an, dass die abgeleitete Klasse von BaseClass erbt. Die Mitglieder der abgeleiteten Klasse können auf Basisklassenmitglieder zugreifen, sofern sie nicht privat sind.
Vererbungsarten in C#
C# unterstützt vier Arten der Vererbung: ein einzelne, mehrstufige, hierarchische und mehrfache Vererbung. Schauen wir uns jeden Typ an.
Einzelvererbung
Einer Vererbung ist die häufigste Vererbungsart, bei der eine abgeleitete Klasse Eigenschaften von nur einer einzelnen Basisklasse nimmt oder erbt.
Zum Beispiel, Der angegebene Code erklärt die Klassenhierarchie und zeigt Vererbungskonzepte.
mit System verwenden;Im obigen Code die Autoklasse ist die Basisklasse und hat eine Methode genannt Start(), die einfach die Nachricht druckt Das Auto begann zur Konsole.
Der Tesla -Klasse stammt aus der Autoklasse und erfordert alle Eigenschaften der Autoklasse. Die Tesla -Klasse fügt eine Methode genannt hinzu Beschleunigen(), welches die Nachricht druckt Tesla beschleunigen zur Konsole.
Der Hauptsächlich() Funktion definiert eine Instanz der Tesla -Klasse, die genannt wird mytesla und ruft seine Methoden start () und beschleunigen () ().
Multi-Level-Vererbung
In mehreren Level-Vererbung erbt eine abgeleitete Klasse von einer anderen abgeleiteten Klasse, die wiederum von einer Basisklasse erbt.
Zum Beispiel, Der folgende C# -Code zeigt Vererbung und Methode, die in einer Klassenhierarchie überschritten wird.
mit System verwenden;Hier Hund ist eine abgeleitete Klasse, die von erbt Säugetier, was wiederum erbt Tier. Die Hundeklasse hat Zugang zu allen Eigenschaften, Methoden und Verhalten von Säugetier und Tier und kann auch ihre eigene einzigartige Methode definieren Bellen().
Der Tierklasse ist die Basisklasse und hat eine Methode genannt Essen(), die einfach die Botschaftstiertiere in die Konsole druckt.
Der Säugetierklasse wird aus der Tierklasse abgeleitet und fügt eine Methode genannt Laufen(), das druckt das Meldungssäugetier, das zur Konsole läuft.
Der Hundeklasse wird aus der Säugetierklasse abgeleitet und fügt eine Methode namens hinzu Bellen(), Dadurch bellt der Nachrichtenhund zur Konsole.
Die Main () -Methode erzeugt eine Instanz der Hundeklasse, die genannt wird Mein Hund und ruft seine Eat (), run () und Bark () -Methoden an.
Beachten Sie, dass die Methoden Eat () und Run () nicht in der Hundeklasse definiert sind, sondern von ihren Elternklassen geerbt werden Tier Und Säugetier, bzw. Der Bellen() Die Methode ist nur in der Hundebuchklasse definiert.
Hierarchische Erbe
In hierarchischer Vererbung werden unterschiedliche Anzahl abgeleiteter Klassen nur aus einer Basisklasse vererbt. Zum Beispiel:
mit System verwenden;Im obigen Code beides Kreis Und Quadrat sind abgeleitete Klassen, die er erben Form. Sie haben Zugriff auf die in Form definierte Draw () -Methode und können auch ihre eigenen einzigartigen Methoden FILL () und COLF () definieren.
Hier haben wir ein Objekt der Kreisklasse genannt erstellt Mycircle und ein Objekt der Quadrat Klasse genannt Mysquare. Wir rufen dann das an Ziehen() Methode, die aus der Formklasse auf beiden Objekten vererbt wird.
Als nächstes rufen wir das an Füllen() Methode auf MyCircle, die spezifisch für die Kreisklasse ist, und der Farbe() Methode auf MySquare, die spezifisch für die quadratische Klasse ist.
Die Ausgabe wird wie unten in die Konsole gedruckt:
Multiple Vererbung
In mehreren Vererbung erbt eine abgeleitete Klasse aus mehreren Basisklassen. C# unterstützt jedoch keine Mehrfachvererbung. Um ähnliche Funktionen zu erreichen, verwendet C# Schnittstellen.
Abschluss
Die Vererbung in C# ermöglicht es Klassen, Verhalten und Funktionalität von Basisklassen zu erben. Mit der Vererbung können wir Code wiederverwenden und einen hierarchischen Fluss im Programm erstellen. Durch das Verständnis der verschiedenen Arten der Vererbung kann man effizientere und organisiertere Code schreiben, der leichter zu warten und zu erweitern ist.