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.
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
Polymorphismus soll auf mehrere Formen hinweisen. Ein Objekt kann mehrere Verhalten haben. Polymorphismus kann in zwei Kategorien unterteilt werden. Sie überladen und überschreiben.
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.
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.
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.
Es gibt verschiedene Arten der Vererbung. Sie sind einstufige Vererbung, mehrstufige Vererbung, mehrfache Vererbung, hierarchische Vererbung und hybride 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.
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.
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.
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.
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.
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. |
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.
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