Arten der Vererbung in Java: Single, Multiple, Multilevel & Hybrid

Veröffentlicht: 2021-06-30

Einführung

Die Programmiersprache „Java“ wird häufig bei der Entwicklung von Anwendungen für Mobilgeräte, Web, Desktop usw. verwendet. Es ist eine robuste, objektorientierte Programmiersprache auf hohem Niveau, die 1995 von Sun Microsystems entwickelt wurde. Obwohl es sich um eine Programmiersprache handelt , Java hat eine API und eine Laufzeitumgebung (JRE) und wird daher auch als Plattform bezeichnet.

In Java gibt es mehrere Konzepte, mit vier Hauptkonzepten, um die Sprache zu verstehen. Sie sind Abstraktion, Kapselung, Vererbung und Polymorphie.

In diesem Artikel konzentrieren wir uns auf das Konzept der Vererbung in Java und die Arten der Vererbung in Java .

Was ist Erbschaft?

Wie der Name schon sagt, bedeutet Vererbung die Vererbung von Eigenschaften. Der Mechanismus, durch den eine Klasse die Eigenschaften einer anderen Klasse ableiten darf, wird als Vererbung bezeichnet. Mit dem Konzept der Vererbung können die Informationen in einem Programm hierarchisch organisiert werden.

In Java ermöglicht das Konzept der Vererbung den Benutzern, Klassen zu erstellen und die Eigenschaften vorhandener Klassen zu verwenden.

Einige wichtige Terminologien im Zusammenhang mit dem Konzept sind:

  • Klasse : Sie ist definiert als eine Gruppe von Objekten, die gemeinsame Eigenschaften teilen.
  • Unterklasse: Diese Klasse wird auch als abgeleitete oder erweiterte Klasse bezeichnet und erbt die Merkmale einer anderen Klasse. Neben den geerbten Feldern und Methoden kann die aus der Klasse generierte Klasse auch eigene Felder und Methoden hinzufügen.
  • Superklasse: Die Superklasse stellt die Klasse dar, deren Merkmale von einer Unterklasse geerbt werden.
  • Wiederverwendbarkeit : Die Technik der Wiederverwendbarkeit ermöglicht es dem Benutzer, eine Klasse (eine neue) zu erstellen, die die Felder oder Methoden einer bereits existierenden Klasse enthält. Es ermöglicht die Wiederverwendung des Codes.

Bedeutung der Java-Vererbung

Die Implementierung der Vererbung in Java bietet die folgenden Vorteile:

  • Vererbung minimiert die Komplexität eines Codes, indem doppelter Code minimiert wird. Wenn derselbe Code von einer anderen Klasse verwendet werden muss, kann er einfach von dieser Klasse an ihre Unterklasse vererbt werden. Daher ist der Code besser organisiert.
  • Die Effizienz der Ausführung eines Codes steigt, wenn der Code in einer einfacheren Form organisiert ist.
  • Das Konzept der Polymorphie kann zusammen mit der Vererbung verwendet werden.

Syntax

Die grundlegende Syntax ist

Klasse Oberklasse {

—————-

}

Klasse Unterklasse erweitert Oberklasse

{

————–

—————–

}

Das Schlüsselwort „extends“ wird beim Vererben einer Klasse verwendet. Es definiert, dass die Funktionalität der Oberklasse auf die Unterklasse erweitert wird.

Die neu erstellte Klasse wird als Unterklasse bezeichnet, während die geerbte Klasse als Elternklasse bezeichnet wird.

Abbildung 1: Unten sehen Sie ein Beispiel für einen Code, der Java-Vererbung anwendet

Quelle

Im obigen Beispiel werden zwei Klassen Calculation und My_Calculation erstellt. Die Methoden addition() und Subtraction() werden von der Klasse Berechnung in die My_Calculation vererbt. Das Schlüsselwort extend wurde zum Vererben der Methoden verwendet.

Die Kompilierung und Ausführung des obigen Codes ergibt die folgende Ausgabe.

Abbildung 2: Die Ausgabe des Codes in Abbildung 1

Quelle

Die Erstellung der Klasse My_Calculation kopiert den Inhalt der Oberklasse in die Unterklasse. Mit den Objekten der Unterklasse können die Benutzer auf das Unterklassenmitglied zugreifen.

In bestimmten Fällen, wenn wir zwischen den gleichnamigen Mitgliedern der Unterklasse und der Oberklasse unterscheiden müssen, wird das Schlüsselwort „super“ verwendet. Wenn wir angeblich zwei Klassen Sub_class und Super_class haben, die dieselbe Methode haben, dh display(). Die Implementierung der Methode ist unterschiedlich, hat aber den gleichen Namen. In einem solchen Fall muss zur Unterscheidung zwischen der Methodensuperklasse und der Unterklasse das Schlüsselwort super verwendet werden.

Arten der Java-Vererbung

Die verschiedenen Arten der Vererbung werden in Java beobachtet:

1. Vererbung auf einer Ebene

Wie der Name schon sagt, tritt diese Art der Vererbung nur für eine einzige Klasse auf. Nur eine Klasse wird von der Elternklasse abgeleitet. Das Flussdiagramm einer Einzelvererbung ist unten dargestellt:

Abbildung 3: Grafische Darstellung der einstufigen Vererbung

Quelle

Zwei Klassen Klasse A und Klasse B sind in Abbildung 3 dargestellt , wobei Klasse B die Eigenschaften von Klasse A erbt.

Abbildung 4 : Ein Beispiel für einen Code, der die Vererbung auf einer Ebene anwendet

Quelle

2. Vererbung auf mehreren Ebenen

Die mehrstufige Vererbung umfasst die Beteiligung von mindestens zwei oder mehr als zwei Klassen. Eine Klasse erbt die Merkmale von einer übergeordneten Klasse und die neu erstellte Unterklasse wird zur Basisklasse für eine andere neue Klasse.

Abbildung 5: Ein Flussdiagramm der Vererbung auf mehreren Ebenen

Quelle

Aus dem Flussdiagramm in Fig. 5 können wir erkennen, dass Klasse B eine von Klasse A abgeleitete Klasse ist und Klasse C weiter von Klasse B abgeleitet ist. Daher entsteht das Konzept der Großelternklasse bei der Vererbung auf mehreren Ebenen. Auf die Mitglieder der Klasse eines Großelternteils kann jedoch in Java nicht direkt zugegriffen werden.

Daher zeigt Abbildung 5 , dass Klasse C die Methoden und Eigenschaften von Klasse A und Klasse B erbt.

Ein Beispiel für mehrstufige Vererbung wird unten mit drei Klassen X, Y und Z gezeigt. Die Klasse Y wird von der Klasse X abgeleitet, die wiederum die Klasse Z erstellt.

Abbildung 6: Ein Beispiel für mehrstufige Vererbung

Quelle

3. Hierarchische Vererbung

Die Art der Vererbung, bei der viele Unterklassen von einer einzigen Klasse erben, wird als hierarchische Vererbung bezeichnet.

Abbildung 7: Grafische Darstellung einer hierarchischen Vererbung.

In Abbildung 7 können wir beobachten, dass die drei Klassen Klasse B, Klasse C und Klasse D von der einzelnen Klasse A geerbt werden. Alle untergeordneten Klassen haben dieselbe übergeordnete Klasse in der hierarchischen Vererbung.

Abbildung 8: Ein Codebeispiel, das das Konzept der hierarchischen Vererbung zeigt

Quelle

Der obige Code erzeugt die Ausgabe

miauen …

Essen…

Neben diesen Arten der Vererbung in Java gibt es noch andere Arten, die als Mehrfachvererbung und hybride Vererbung bekannt sind. Beide Arten werden nicht durch Klassen unterstützt und können nur durch die Verwendung von Schnittstellen erreicht werden.

4. Mehrfachvererbung

Mehrfachvererbung ist eine Art der Vererbung, bei der eine Unterklasse Merkmale von mehr als einer Elternklasse erben kann.

Abbildung 9: Darstellung von Mehrfachvererbungen

Quelle

Abbildung 4 zeigt, dass Klasse C von den beiden Klassen Klasse A und Klasse B abgeleitet ist. Mit anderen Worten kann beschrieben werden, dass die Unterklasse C Eigenschaften sowohl von Klasse A als auch von B erbt.

5. Hybride Vererbung

Hybridvererbung ist eine Art der Vererbung, die Einfachvererbung und Mehrfachvererbung kombiniert. Da Mehrfachvererbung von Java nicht unterstützt wird, kann Hybridvererbung auch nur über Schnittstellen erreicht werden.

Abbildung 10: Darstellung einer hybriden Vererbung

Quelle

Bei den verschiedenen Arten der Vererbung in Java besteht das ultimative Ziel darin, Unterklassen zu erstellen, deren Eigenschaften von den Oberklassen geerbt werden. Die erstellten Unterklassen haben verschiedene Eigenschaften:

  • In einer Unterklasse geerbte Felder und Methoden können direkt verwendet werden.
  • In der Unterklasse können auch neue Felder und Methoden deklariert werden, die in der Oberklasse nicht vorhanden sind.
  • In der Unterklasse kann eine neue Instanzmethode mit derselben Signatur wie die Methode in der Oberklasse erstellt werden. Der Vorgang wird als übersteuern bezeichnet.
  • In der Unterklasse kann eine neue statische Methode mit derselben Signatur wie die Methode in der Oberklasse erstellt werden. Der Vorgang wird als Verbergen bezeichnet.

Lernen Sie Softwarekurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.

Fazit

Der Artikel diskutierte das wichtige Konzept der Vererbung in Java und die Arten der Vererbung in Java . Vererbung ist daher der Mechanismus, bei dem wir die Codes wiederverwenden können, um die Eigenschaften einer Klasse in eine andere Klasse zu übernehmen. Dies kann durch die verschiedenen Arten von Vererbungsmustern erreicht werden, wie im Artikel gezeigt. Zum Begriff der Erbschaft gehört jedoch noch viel mehr. Um sich im Bereich der Entwicklung hervorzutun, ist die Beherrschung der komplexen Programmierung von Java erforderlich. Wenn Sie davon träumen, intelligente Geräte zu erneuern, dann ist das Executive PG-Programm in Full-Stack-Softwareentwicklung, das von upGrad angeboten wird, die beste Wahl. Der von der Liverpool John Moores University zertifizierte Kurs in Zusammenarbeit mit dem IIIT Bangalore bietet mehr als 500 Lernstunden und richtet sich an Berufsanfänger. Die im upGrad-Kurs erlernten Fähigkeiten werden dazu beitragen, Möglichkeiten für den Bereich Softwareentwicklung, Webentwicklung, Javascript-Entwickler usw. zu eröffnen. Offen für jedes Geschlecht in der Altersgruppe von 21 bis 45 Jahren ist das interaktive Programm möglicherweise die beste Wahl für alle Codierer.

Was ist Erbschaft?

Vererbung ist ein Prozess, bei dem ein neues Objekt die Eigenschaften des vorherigen Objekts erwirbt. Als Beispiel können Sie eine Klasse „Mensch“ betrachten. Es kann viele Eigenschaften von Menschen geben, die Sie in Ihre Klasse aufnehmen möchten, z. B. Größe, Gewicht usw. Eine Möglichkeit, dies zu tun, besteht darin, alle diese Eigenschaften erneut in Ihrer Klasse zu definieren. Es mag ein guter Weg sein, objektorientiertes Programmieren zu lernen, aber keine gute Praxis. Der beste Weg, dies zu tun, besteht darin, alle diese Eigenschaften von einer bestimmten Klasse zu erben. Die Klasse „Kind“ kann alle Eigenschaften der Klasse „Mensch“ (oder „Eltern“) erben. Dies wird in der objektorientierten Programmierung als Vererbung bezeichnet.

Was ist objektorientierte Programmierung?

Was ist Mehrfachvererbung?