Objektorientierte Programmierung ist heute die beherrschende Programmier-Paradigma . Fast alle Mainstream- Sprachen unterstützen eine Form der Objektorientierung . Mehrfach-Vererbung beschreibt die Fähigkeit einer Klasse Verhalten von mehr als einer Klasse oder super- erben . Mehrfachvererbung ist berüchtigt für Wartung verursacht Probleme für Programmierer, obwohl es ein paar Vorteile hat. Es wurden Schritte unternommen , um Alternativen , die Programmierer , um die Vorteile ohne die zugehörige Nachteile ernten erlauben zu entwickeln. Object - Oriented Programming
Objektorientierte Programmierung (OOP) ist die dominierende Programmier-Paradigma im Unternehmen Programmierung Raum . Statt der Betrachtung Programmierung Übergabe einer Computer eine Liste von Anweisungen, die ausgeführt , Objektorientierte Programmierer aufbauen diskrete Objekte im Speicher und dann orchestrieren diese Objekte, um funktionierende Software zu produzieren. Der objektorientierte Ansatz , wenn gut ausgeführt , produziert modulare Software, die einfach zu testen ist .
Klassen und Vererbung
Klassen sind ein grundlegender Bestandteil der objektorientierten Programmierung . Klassen fungieren als " Fabrik" für andere Objekte , sie anderen Objekten zu erstellen. OOP -Programmierer verbringen den Großteil ihrer Zeit die Definition von Klassen , die verschiedene Verhaltensweisen, die sie benötigen, um Software zu schreiben ausstellen . Klassen können von anderen Klassen erben , oder kopieren ihr Verhalten. Klassen, die von einer anderen Klasse erben sollen eine Unterklasse dieser Klasse sein . Die meisten OO-Sprachen sind Single- Vererbung können Klassen nur von einer Klasse erben. Mehrfachvererbung erlaubt Klassen aus mehr als einer anderen Klasse erben.
Mehrfachvererbung
Mehrfachvererbung ist nicht sehr weit verbreitet. Es kann zu produzieren Software , das ist schwer zu verarbeiten und öffnet Klassen bis hin zu allen Arten von Problemen. Zum Beispiel könnte ein Programmierer "sub -class" zwei verschiedene Klassen mit widersprüchlichen Verhaltens. Dies könnte dazu führen riesige Debugging Kopfschmerzen. Auf der anderen Seite , von einer Hierarchie -of- Typ Gesichtspunkt kann ein Objekt mehr als ein Typ angehören. Zum Beispiel könnte eine Libelle zu sowohl Klasse " Insekten " und Klasse gehören " flugfähig ". Mehrfachvererbung ist von einem "Typen" Standpunkt bequem.
Alternativen zu Mehrfachvererbung
Es gab Versuche , Alternativen zu Mehrfachvererbung , die einige der Fragen verbunden lösen entwickeln mit dem Konzept , aber auch ermöglicht Programmierern zu ernten einige der Vorteile . Einer der vielversprechendsten Ansätze ist " Mix -Ins ", die Programmierer, um spezielle Klassen , die in andere Klassen gemischt werden kann definieren können . Wenn diese Klassen definieren widersprüchliche Verhalten , ersetzt das Verhalten, das zu einer tatsächlichen Klasse gehört die Verwechslung im Verhalten.