Unterschied zwischen Polymorphismus und Vererbung bei OOP

Inhaltsverzeichnis:

Unterschied zwischen Polymorphismus und Vererbung bei OOP
Unterschied zwischen Polymorphismus und Vererbung bei OOP

Video: Unterschied zwischen Polymorphismus und Vererbung bei OOP

Video: Unterschied zwischen Polymorphismus und Vererbung bei OOP
Video: Java-Übung zum Thema Vererbung und Polymorphie 2024, November
Anonim

Hauptunterschied – Polymorphismus vs. Vererbung bei OOP

Objektorientierte Programmierung (OOP) wird häufig zur Entwicklung von Software verwendet. Viele Programmiersprachen unterstützen die objektorientierte Programmierung. Die objektorientierte Programmierung ist eine Methodik zum Entwerfen eines Programms unter Verwendung von Klassen und Objekten. Eine Klasse in OOP ist eine Blaupause zum Erstellen eines Objekts. Eine Klasse hat Eigenschaften und Methoden. Ein Objekt ist eine Instanz einer Klasse. OOP enthält vier Säulen wie Vererbung, Polymorphismus, Abstraktion und Kapselung. Dieser Artikel beschreibt den Unterschied zwischen Polymorphismus und Vererbung in OOP. Der Hauptunterschied zwischen Polymorphismus und Vererbung in OOP besteht darin, dass Polymorphismus die Fähigkeit eines Objekts ist, sich auf verschiedene Weise zu verh alten, und Vererbung darin besteht, eine neue Klasse unter Verwendung von Eigenschaften und Methoden einer vorhandenen Klasse zu erstellen.

Was ist Polymorphismus bei OOP?

Polymorphismus soll mehrere Formen anzeigen. Ein Objekt kann mehrere Verh altensweisen haben. Polymorphismus kann in zwei Kategorien unterteilt werden. Sie überladen und überschreiben.

Überladung

Beziehen Sie sich auf das folgende in Java geschriebene Programm.

Unterschied zwischen Polymorphismus und Vererbung in OOP
Unterschied zwischen Polymorphismus und Vererbung in OOP

Abbildung 01: Überlastung

Nach obigem Programm wird ein Objekt vom Typ A erstellt. Beim Aufruf von obj.sum(); Es wird die Ausgabe in Bezug auf die Methode sum () geben. Beim Aufruf von obj.sum(2, 3); es wird die Ausgabe bezüglich sum(int a, int b) geben. Es ist zu beobachten, dass ein und dasselbe Objekt je nach Situation unterschiedliche Verh altensweisen aufweist. Wenn es mehrere Methoden mit demselben Namen, aber unterschiedlichen Parametern gibt, wird dies als Überladen bezeichnet. Es wird auch als statischer Bindungs- oder Kompilierzeit-Polymorphismus bezeichnet.

Überschreiben

Eine andere Art von Polymorphismus überschreibt. Beziehen Sie sich auf das folgende in Java geschriebene Programm.

Unterschied zwischen Polymorphismus und Vererbung in OOP_Abbildung 02
Unterschied zwischen Polymorphismus und Vererbung in OOP_Abbildung 02

Abbildung 02: Überschreiben

Gemäß obigem Programm gibt es eine Methode display() in Klasse A. Klasse B erweitert sich von Klasse A. Daher sind alle Methoden in Klasse A für Klasse B zugänglich. Es ist Vererbung. Das Vererbungskonzept wird später näher beschrieben.

Klasse B hat auch die gleiche Methode display(). Wenn ein Objekt vom Typ A erstellt und die Anzeigemethode aufgerufen wird, ergibt die Ausgabe B. Die Anzeigemethode der Klasse A wird von der Anzeigemethode der Klasse B überschrieben. Die Ausgabe ist also B.

Wenn es Methoden mit demselben Namen und denselben Parametern gibt, aber in zwei verschiedenen Klassen, und sie mit Vererbung verknüpft sind, wird dies als Überschreiben bezeichnet. Es ist auch bekannt als Late Binding, Dynamic Binding, Runtime Polymorphism. Überladen und Überschreiben werden als Polymorphismus bezeichnet. Es ist ein wichtiges Konzept in der objektorientierten Programmierung.

Was ist Vererbung in OOP?

Beziehen Sie sich auf das folgende in Java geschriebene Programm.

Hauptunterschied zwischen Polymorphismus und Vererbung in OOP
Hauptunterschied zwischen Polymorphismus und Vererbung in OOP

Abbildung 03: Beispiel für Vererbung

Nach obigem Programm hat Klasse A die Methode sum() und Klasse B die Methode sub().

Die Methode sum() 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. Auch in Klasse B gibt es keine Methode sum(); es wird von Klasse A geerbt. Die Vererbung ist nützlich für die Wiederverwendbarkeit von Code. Die ältere Klasse wird als Basisklasse, Oberklasse oder Elternklasse bezeichnet. Die abgeleitete Klasse wird Unterklasse oder Kindklasse genannt.

Erbschaftsarten

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

Einzelvererbung

Bei der Einfachvererbung gibt es eine Oberklasse und eine Unterklasse. Wenn Klasse A die Oberklasse und Klasse B die Unterklasse ist, kann Klasse B auf alle Eigenschaften und Methoden der Klasse A zugreifen. Es gibt nur eine Ebene; daher wird es als einstufige Vererbung bezeichnet.

Mehrstufige Vererbung

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

Mehrfachvererbung

Bei der Mehrfachvererbung gibt es viele Oberklassen und eine Unterklasse. Wenn es drei Oberklassen namens A, B, C gibt und D die Unterklasse ist, dann kann Klasse D von A, B und C erben. Mehrfachvererbung wird in der Programmiersprache C++ unterstützt. Es wird in Programmiersprachen wie Java oder C nicht unterstützt. In diesen Sprachen werden Schnittstellen zur Implementierung der Mehrfachvererbung verwendet.

Hierarchische Vererbung

Wenn es Klassen namens A als Oberklassen gibt und B, C Unterklassen sind, können diese Unterklassen Eigenschaften und Methoden der Klasse A erben. Diese Art von Vererbung wird als hierarchische Vererbung bezeichnet.

Hybride Vererbung

Es gibt noch einen weiteren speziellen Vererbungstyp, der als hybride Vererbung bekannt ist. Es ist eine Kombination aus mehrstufiger und mehrfacher Vererbung. Wenn A, B, C und D Klassen sind und B von A erbt und D sowohl von B als auch C erbt, dann handelt es sich um eine hybride Vererbung.

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

Beides sind Konzepte der objektorientierten Programmierung

Was ist der Unterschied zwischen Polymorphismus und Vererbung bei OOP?

Polymorphismus vs. Vererbung bei OOP

Polymorphismus ist die Fähigkeit eines Objekts, sich auf verschiedene Weise zu verh alten. Vererbung ist das Erstellen einer neuen Klasse unter Verwendung von Eigenschaften und Methoden einer vorhandenen Klasse.
Nutzung
Polymorphismus wird für Objekte verwendet, um welche Form von Methoden zur Kompilierungs- und Laufzeit aufzurufen. Vererbung dient der Wiederverwendbarkeit von Code.
Implementierung
Polymorphismus ist in Methoden implementiert. Vererbung ist in Klassen implementiert.
Kategorien
Polymorphismus kann in Überladen und Überschreiben unterteilt werden. 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 gemeinsame Schnittstelle zu mehreren Formularen ist und Vererbung darin besteht, eine neue Klasse unter Verwendung von Eigenschaften und Methoden einer vorhandenen Klasse zu erstellen. Beide Konzepte sind in der Softwareentwicklung weit verbreitet.

Laden Sie die PDF-Datei Polymorphismus vs. Vererbung in OOP herunter

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

Empfohlen: