Programmiervererbungseigenschaften, Typen, Beispiele

Programmiervererbungseigenschaften, Typen, Beispiele

Der Vererbung in der Programmierung objektorientierte Es ist eine Möglichkeit, Objekte in einer Hierarchie von den allgemeinsten zum spezifischsten zu organisieren. Es ist das Gerät, mit dem eine Klasse in einer anderen Klasse erweitert wird und eine analoge Ausführung beibehält.

In den meisten klassenorientierten Sprachen basieren auf klassenbasierten Objekten, ein Objekt, das durch Vererbung erstellt wurde und das als Kinderobjekt bezeichnet wird, alle Eigenschaften und Verhaltensweisen des übergeordneten Objekts.

Einfache Demonstration der Vererbung in der Objektorientierung. Quelle: Pluke / CC0 Creative Commons CC0 1.0 Universal Public Domain

Daher ist es eine Qualität, die die Beziehung zwischen verschiedenen Klassen darstellt. Die Vererbung ermöglicht es einer Klasse, das gleiche Verhalten wie eine andere Klasse zu haben und dieses Verhalten zu erweitern oder anzupassen, um spezielle Maßnahmen für bestimmte Bedürfnisse zu liefern.

Vererbung kann helfen, Objekte darzustellen, die einige Unterschiede und Ähnlichkeiten in der Art und Weise, wie sie funktionieren. Alle gemeinsamen Funktionen, die Objekte gemeinsam haben.

[TOC]

Merkmale der Vererbung

Die Vererbung ist eine der wichtigsten Eigenschaften der von Objekte orientierten Programmierung, die dazu dient, eine neue Klasse aus vorhandenen Klassen zu definieren.

Das heißt, neue Klassen der vorhandenen Basisklassen können abgeleitet werden, wobei neue Funktionen hinzugefügt werden. Sie müssen nicht von Grund auf neu schreiben. Daher bietet die Vererbung eine Möglichkeit, den vorhandenen Code leicht wiederzuverwenden.

Wenn Sie bereits eine Klasse haben, die fast alles tut, was Sie wollen, können Sie eine Unterklasse erstellen, in der ein Teil Ihres Verhaltens teilweise abgebrochen wird, oder möglicherweise neue Funktionen werden hinzugefügt.

Eine abgeleitete Klasse erbt alle Methoden der Basisklasse, mit Ausnahme der folgenden:

Kann Ihnen dienen: Analoge Computer: Eigenschaften, Komponenten, Typen

- Bauherren, Zerstörer und Kopien -Klassenbauer.

- Basisklassen überlastete Operatoren.

- Basisklassenfreundliche Funktionen.

Hierarchie

Wie ein Stammbaum dient die Erbschaft dazu, eine Klassenhierarchie zu bilden. Es ist wichtig zu beachten, dass die für eine Basisklasse ermittelten Attribute automatisch in der abgeleiteten Klasse vorhanden sind. Darüber hinaus funktionieren die Methoden für die Basisklasse für Derivate.

Es wird gesagt, dass eine Klasse Unterklasse der Klasse sein wird, deren Erbringe erbt. Andererseits wird diese Klasse Ihre Superklasse sein. Es kann die allgemeinste Klasse als Basisklasse bezeichnen, da sie sich an der Basis der Hierarchie befindet.

Polymorphismus

Die Vererbung ist in einigen Sprachen mit statischen Typen sehr beliebt, da der Programmierer einige der statischen Einschränkungen vermeiden kann.

Ein Objekt, das von einem anderen Objekt erbt. Ein Beispiel könnte die "Ausbilder" und "Schüler" -Objekte sein, von denen jeder "Person" erbt ".

Wenn Ausbilder und Student dieselbe Person sind, können Sie eine Funktion schreiben, die den Personentyp als Parameter akzeptiert, und die im Ausbilder und in den Studentenobjekten funktioniert, da beide Erben der Person sind.

Vererbungsarten

Einzigartiges Erbe

Wenn eine abgeleitete Klasse die Eigenschaften und das Verhalten einer einzelnen Klasse erbt. Das heißt, eine Klasse erstreckt sich auf eine andere Klasse.

Mehrebenenvererbung

Es bezieht sich auf das Gerät, in dem Sie von einer abgeleiteten Klasse erben können, und macht diese abgeleitete Klasse zur Basisklasse für eine neue Klasse. Das heißt, es entsteht, wenn eine abgeleitete Klasse aus einer anderen abgeleiteten Klasse erstellt wird.

Kann Ihnen dienen: von Neumann Architektur: Origin, Modell, wie es funktioniert

Hierarchische Erbe

In diesem Vererbung erben viele Unterklassen aus einer einzigen Klasse. Das heißt, es passiert, wenn eine einzelne Basisklasse von mehr als einer abgeleiteten Klasse geerbt wird.

Hybriderbe

Es ist das daraus resultierende Keime, wenn eines der drei vorherigen Erbschaften (einzigartig, hierarchisch und mehrstufig) kombiniert werden.

Multiple Vererbung

Entspricht der Vererbungsfigur, wenn eine Klasse mehr als eine Superklasse erbt. Die vorhandenen Unannehmlichkeiten bei dieser Art von Vererbung besteht darin, dass die abgeleitete Klasse die Abhängigkeit mit zwei Basisklassen verarbeiten muss.

Andererseits ermöglicht diese Art von Vererbung Programmierern, Klassen aufzustellen, die Aspekte mehrerer Klassen und deren entsprechende Hierarchien kombinieren.

Vererbungsarten aus einer Basisklasse

Öffentlicher Erbschaft

Wenn eine Klasse von einer öffentlichen Basisklasse abgeleitet wird.

Die privaten Mitglieder einer Superklasse werden niemals direkt von einer abgeleiteten Klasse erschwinglich sein, aber Sie können durch Anrufe an öffentliche Mitglieder Zugang zu ihnen haben und vor der Basisklasse geschützt werden.

Geschützter Vererbung

Wenn eine Klasse erstellt wird, die von einer geschützten Superklasse erbt, werden sowohl öffentliche Mitglieder als auch geschützte von dieser Superklasse geschützte Mitglieder der abgeleiteten Klasse.

Privates Erbe

Wenn eine Unterklasse aus einer privaten Superklasse erstellt wird, werden Mitglieder, die öffentlich und vor dieser Superklasse geschützt sind.

Beispiele

Beispiel in Python

Um zu zeigen, wie das Erbschaftsprinzip funktioniert, Roboter oder eine bessere Klasse von Robotern in der Python -Programmiersprache aufgenommen werden. Dafür wird eine Klasse namens Robotmedic angegeben (Arzt), die aus der Roboter -Superklasse abgeleitet ist.

Kann Ihnen dienen: Industrieanlagen von Peru

Wenn der Robotmed -Klassencode beobachtet wird, ist ersichtlich, dass in dieser Klasse kein Attribut oder keine Methode definiert wurde.

Da die Roboterklasse eine Roboter -Unterklasse ist, erben Sie in diesem Fall sowohl die __init__ als auch die Say_hi -Methode. Wenn Sie diese Methoden erben, können sie verwendet werden, als ob sie in der Robotmed -Klasse definiert worden wären.

Wenn eine Roboterinstanz erstellt wird, erstellt die Funktion __init__ auch ein Namensattribut von Namen. Die Say_hi -Methode kann auf das Robotmedic -Objekt „Y“ angewendet werden, wie im Ergebnis des vorherigen Codes zu sehen ist.

Beispiel in c++

Eine Klasse kann mehr als eine Klasse erben, was bedeutet, dass sie Daten und Funktionen mehrerer Superklassen erben kann. Um eine abgeleitete Klasse zu definieren, wird eine Klassenableitungsliste verwendet, um die Basisklassen anzugeben.

Eine Klassenverweisliste in C ++ nennt einen oder mehrere Basisklassen und hat den folgenden Weg: Klasse Derced-Klasse: Zugriffsbeobachtung Basisklasse, in welchem Zugriffsbeobachtung Ist öffentlich, Geschützt entweder Privatgelände, Und Basisklasse Es ist der Name einer zuvor definierten Klasse. Wenn nicht verwendet Zugriffsbeobachtung, Wird genommen Privatgelände Standard.

Die Superklasse „Form“ und ihre abgeleitete Klasse „Rechteck“ können wie folgt betrachtet werden:

Wenn der vorherige Code kompiliert und ausgeführt wird, tritt das folgende Ergebnis auf: "Gesamtfläche: 35".

Verweise

  1. Dave Braunschweig (2020). Vererbung und Polymorphismus. Abus -Community. Entnommen von: Press.Ein Bus.Gemeinschaft.
  2. Python -Kurs (2020). Nachlass. Entnommen aus: Python-Course.EU.
  3. Data Mentor (2020). R Vererbung. Entnommen aus: Datamentor.Io.
  4. Tutorials Punkt (2020). C ++ Vererbung. Entnommen aus: TutorialPoint.com.
  5. Netzinformationen (2020). Verschiedene Arten der Vererbung. Entnommen aus: Netzinformationen.com.