Mehrfachvererbung

Autor: Randy Alexander
Erstelldatum: 23 April 2021
Aktualisierungsdatum: 15 Kann 2024
Anonim
Programmieren Lernen #44 - Mehrfachvererbung und das Diamantenproblem
Video: Programmieren Lernen #44 - Mehrfachvererbung und das Diamantenproblem

Inhalt

Definition - Was bedeutet Mehrfachvererbung?

Mehrfachvererbung ist eine Funktion einiger objektorientierter Programmiersprachen, bei der eine Klasse oder ein Objekt Merkmale und Eigenschaften von mehr als einer übergeordneten Klasse oder einem übergeordneten Objekt erbt. Dies steht im Widerspruch zu der Eigenschaft der Einzelvererbung, mit der ein Objekt oder eine Klasse von einem bestimmten Objekt oder einer bestimmten Klasse erben kann. Obwohl die Mehrfachvererbung bestimmte Vorteile mit sich bringt, erhöht sie die Mehrdeutigkeit und Komplexität, wenn sie nicht ordnungsgemäß entworfen oder implementiert wird.


Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt Multiple Inheritance

Im Gegensatz zur Einzelvererbung weist die Mehrfachvererbung aus der Perspektive der Vererbung eine symmetrische Verschmelzung und asymmetrische Erweiterung auf. Wenn die Eigenschaften eines Satzes nicht von den Eigenschaften des anderen Satzes abhängen, ist eine Mehrfachvererbung wahrscheinlich vorteilhafter. Mit anderen Worten, Mehrfachvererbung ist nützlicher, wenn die Trennung von Merkmalen von Objekten in orthogonale Mengen möglich ist. Mehrfachvererbung ist im Fall eines Adaptermusters hilfreich. Es ermöglicht die Anpassung einer Schnittstelle durch eine andere. Ein weiterer Vorteil der Mehrfachvererbung ist mit dem Beobachtermuster verbunden. In diesem Muster können die Aufrufe eine Liste von Funktionen / Beobachtern führen, die durch eine Änderung durch Aufrufen einer der Funktionen benachrichtigt werden können. Beispiele für Programmiersprachen, die Mehrfachvererbung unterstützen, sind C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp und Tcl. Java ist eine der bekanntesten Programmiersprachen, die keine Mehrfachvererbung unterstützt.


Mit der Mehrfachvererbung sind jedoch einige Nachteile verbunden. Das Feature erschwert den Methodenversand und bringt zusätzliche Kontrolle in die Anwendung. Mehrfachvererbung erfordert die Kenntnis von Abhängigkeiten, insbesondere im Zusammenhang mit der Methodenauswahl. Darüber hinaus benötigen Protokolle mit Mehrfachvererbung mehr Dokumentation als Protokolle mit Einfachvererbung.