Unterschied zwischen Polymorphismus und Vererbung bei OOP

Schlüsseldifferenz - Polymorphismus vs. Vererbung in OOP
 

Objektorientierte Programmierung (OOP) wird üblicherweise zur Entwicklung von Software verwendet. Viele Programmiersprachen unterstützen die objektorientierte Programmierung. Objektorientierte Programmierung ist eine Methode, um ein Programm mithilfe von Klassen und Objekten zu entwerfen. Eine Klasse in OOP ist ein Bauplan, um ein Objekt zu erstellen. Eine Klasse verfügt über Eigenschaften und Methoden. Ein Objekt ist eine Instanz einer Klasse. OOP enthält vier Säulen wie Vererbung, Polymorphismus, Abstraktion und Encapsulation. Dieser Artikel beschreibt den Unterschied zwischen Polymorphismus und Vererbung bei OOP. Das Hauptunterschied zwischen Polymorphismus und Vererbung in OOP ist das Polymorphismus ist die Fähigkeit eines Objekts, sich auf verschiedene Arten zu verhalten. Unter Vererbung wird eine neue Klasse mit Eigenschaften und Methoden einer vorhandenen Klasse erstellt.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Polymorphismus in OOP?
3. Was ist Vererbung in OOP
4. Ähnlichkeiten zwischen Polymorphismus und Vererbung in OOP
5. Side-by-Side-Vergleich - Polymorphismus vs. Vererbung in OOP in Tabellenform
6. Zusammenfassung

Was ist Polymorphismus in OOP??

Polymorphismus soll auf mehrere Formen hinweisen. Ein Objekt kann mehrere Verhalten haben. Polymorphismus kann in zwei Kategorien unterteilt werden. Sie überladen und überschreiben.

Überlastung

Siehe das unten in Java geschriebene Programm.

Abbildung 01: Überladen

Gemäß dem obigen Programm wird ein Objekt vom Typ A erstellt. Beim Aufruf von obj.sum (); Es wird die Ausgabe der Methode sum () ausgegeben. Beim Aufruf des obj.sum (2,3); es gibt die Ausgabe in Bezug auf die Summe (int a, int b). Es kann beobachtet werden, dass das gleiche Objekt je nach Situation unterschiedliche Verhaltensweisen aufweist. Wenn mehrere Methoden mit demselben Namen, jedoch mit unterschiedlichen Parametern vorhanden sind, wird dies als bezeichnet Überlastung. Es ist auch bekannt als statische Bindung oder Zeitpolymorphismus kompilieren.

Überschreiben

Eine andere Art von Polymorphismus ist überschreibend. Siehe das unten in Java geschriebene Programm.

Abbildung 02: Überschreiben

Gemäß dem obigen Programm gibt es eine Methode display () in Klasse A. Klasse B erstreckt sich von Klasse A. Daher sind alle Methoden in Klasse A für Klasse B zugänglich. Es handelt sich um Vererbung. Das Vererbungskonzept wird später beschrieben.

Klasse B hat auch die gleiche Methodendarstellung (). Wenn Sie ein Objekt vom Typ A erstellen und die Anzeigemethode aufrufen, wird die Ausgabe B ausgegeben. Die Anzeigemethode der Klasse A wird durch die Anzeigemethode der Klasse B überschrieben. Die Ausgabe ist also B.

Wenn es Methoden mit demselben Namen und gleichen Parametern, aber in zwei verschiedenen Klassen gibt und diese mit der Vererbung verknüpft sind, spricht man von Überschreiben. Es ist auch bekannt als Spätes Binden, Dynamisches Binden, Laufzeitpolymorphismus. Überladen und Überschreiben wird als Polymorphismus bezeichnet. Es ist ein Hauptkonzept in der objektorientierten Programmierung.

Was ist Vererbung in OOP?

Siehe das unten in Java geschriebene Programm.

Abbildung 03: Beispiel für Vererbung

Gemäß dem obigen Programm hat Klasse A die Methode sum () und Klasse B hat die Methode sub ()..

Die sum () - Methode der Klasse A kann in Klasse B mit dem Schlüsselwort extend verwendet werden. Die Wiederverwendung der Eigenschaften und Methoden in einer vorhandenen Klasse zum Erstellen einer neuen Klasse wird als Vererbung bezeichnet. Es gibt auch keine sum () - Methode in Klasse B; es wird von Klasse A geerbt. Vererbung ist nützlich für die Wiederverwendbarkeit von Code. Die ältere Klasse heißt Basisklasse, Oberklasse oder übergeordnete Klasse. Die abgeleitete Klasse heißt Unterklasse oder Kinderklasse.

Arten der Vererbung

Es gibt verschiedene Arten der Vererbung. Sie sind einstufige Vererbung, mehrstufige Vererbung, mehrfache Vererbung, hierarchische Vererbung und hybride Vererbung.

Einzelne Vererbung

In Single Inheritance gibt es eine Superklasse und eine Unterklasse. Wenn Klasse A die Superklasse und Klasse B die Unterklasse ist, können alle Eigenschaften und Methoden der Klasse A von Klasse B aufgerufen werden. Es gibt nur eine Ebene. Daher wird es als einstufige Vererbung bezeichnet.

Mehrstufige Vererbung

In der mehrstufigen Vererbung gibt es drei Klassenstufen. Die Zwischenklasse erbt von der Superklasse. Die Unterklasse erbt von der Zwischenklasse. Wenn es drei Klassen gibt, sind A, B und C und A die Superklasse und B die Zwischenklasse. Dann erbt B von A und C erbt von B, es ist eine mehrstufige Vererbung.

Mehrfachvererbung

In Multiple Inheritance gibt es viele Superklassen und eine Unterklasse. Wenn es drei Unterklassen gibt, die mit A, B, C und D als Unterklasse bezeichnet werden, kann Klasse D von A, B und C erben. In der Programmiersprache C ++ wird Mehrfachvererbung unterstützt. Es wird nicht in Programmiersprachen wie Java oder C # unterstützt. Schnittstellen werden zum Implementieren der Mehrfachvererbung in diesen Sprachen verwendet.

Hierarchische Vererbung

Wenn es Klassen gibt, die als Superklassen A bezeichnet werden, und B, C Unterklassen sind, können diese Unterklassen Eigenschaften und Methoden der Klasse A erben. Diese Art der Vererbung wird als Hierarchische Vererbung bezeichnet.

Hybridvererbung

Es gibt einen weiteren speziellen Vererbungstyp, der als Hybrid-Vererbung bezeichnet wird. Es ist eine Kombination aus mehrstufigen und mehrfachen Vererbungen. Wenn A, B, C und D Klassen sind und B von A und D von B und C erbt, handelt es sich um eine Hybridvererbung.

Was sind die Ähnlichkeiten zwischen Polymorphismus und Vererbung in OOP??

  • Beides sind Konzepte der objektorientierten Programmierung.

Was ist der Unterschied zwischen Polymorphismus und Vererbung in OOP??

Polymorphismus vs. Vererbung bei OOP

Polymorphismus ist die Fähigkeit eines Objekts, sich auf verschiedene Weise zu verhalten. Vererbung ist das Erstellen einer neuen Klasse mit Eigenschaften und Methoden einer vorhandenen Klasse.
 Verwendungszweck
Polymorphismus wird für Objekte verwendet, um welche Methodenform zur Kompilierzeit und zur Laufzeit aufzurufen. Vererbung wird für die Wiederverwendbarkeit von Code verwendet.
Implementierung
Polymorphismus wird in Methoden implementiert. Vererbung wird in Klassen implementiert.
 Kategorien
Polymorphismus kann in Überladen und Überschreiben unterteilt werden. Die Vererbung kann in einstufige, mehrstufige, hierarchische, hybride und mehrfache Vererbung unterteilt werden.

Zusammenfassung - Polymorphismus vs. Vererbung bei OOP 

Polymorphismus und Vererbung sind wichtige Konzepte in der objektorientierten Programmierung. Der Unterschied zwischen Polymorphismus und Vererbung in OOP besteht darin, dass Polymorphismus eine häufige Schnittstelle zu mehreren Formularen ist und Vererbung darin besteht, eine neue Klasse mit Eigenschaften und Methoden einer vorhandenen Klasse zu erstellen. Beide Konzepte sind in der Softwareentwicklung weit verbreitet.

Laden Sie das PDF Polymorphism vs. Inheritance in OOP herunter

Sie können die PDF-Version dieses Artikels herunterladen und gemäß dem Zitiervermerk für Offline-Zwecke verwenden. Laden Sie die PDF-Version hier herunter. Unterschied zwischen Polymorphismus und Vererbung in OOP

Referenz:
  1. 8.3 Was ist Vererbung in Java | Vortrag | Tutorial, Telusko Learning, 15. Mai 2014. Hier verfügbar  
  2. Polymorphismus im Java-Tutorial, Telusko Learning, 15. Mai 2014. Hier verfügbar