Fachkonzept - Vererbung

Erweiterung von Klassen

Vererbung beschreibt die Vorgehensweise, eine neue Klasse als Erweiterung einer bereits bestehenden Klasse (oder mehrerer bereits bestehender Klassen) zu entwickeln. Die neue Klasse wird auch Subklasse genannt. Die bestehende Klasse wird Basisklasse oder Superklasse genannt.

Das folgende Klassendiagramm zeigt eine Vererbungssituation, bei der die Subklasse Rucksackroboter eine Erweiterung der Basisklasse Roboter darstellt.

Klassendiagramm

Übernehmen, ergänzen und überschreiben

Beim Vererben übernimmt die Subklasse die Attribute und Methoden der Basisklasse.

Eine übernommene Methode kann dabei überschrieben (d. h. neu definiert) werden.

Die Subklasse kann dann noch zusätzliche Attribute und Methoden ergänzen.

Alle diese Fälle kommen im oben gezeigten Klassendiagramm vor:

Die Subklasse Rucksackroboter übernimmt z. B. das Attribut x und die Methode schritt der Basisklasse Roboter.

Die Subklasse Rucksackroboter überschreibt die Methode ziegelHinlegen der Basisklasse Roboter.

Die Subklasse Rucksackroboter ergänzt das Attribut rucksack und z. b. die Methode getRucksack.

Spezialisierung und Generalisierung

Vererbung kann dann ins Spiel kommen, wenn eine Klasse als Spezialisierung einer anderen Klasse konzipiert wird.

Das Roboterbeispiel zeigt eine solche Spezialisierung.

Klassendiagramm

Oft wird aber auch die gemeinsame Struktur verschiedener Klassen durch Generalisierung mit einer Superklasse beschrieben.

Klassendiagramm

In beiden Fällen verfolgt man das Ziel, eine Struktur nur einmal zu definieren.

Vererbung wird insbesondere dann benutzt, wenn größere Klassenbibliotheken (wie z. B. tkinter) entwickelt werden.

X

Fehler melden

X

Suche