UML Vererbung
Wissen kompakt: Die Vererbung ist ein zentrales Konzept der Objektorientierung bzw. der UML, bei dem Attribute und/oder Methoden einer Klasse an eine andere Klasse vererbt werden.
UML-Vererbung – Ein zentrales Konzept der Objektorientierung
Die Vererbung ist ein zentrales Konzept der Unified Modeling Language (UML) und wird bei der Gestaltung von Klassen und der Modellierung von Klassendiagrammen genutzt. Eine Klasse besteht aus einer Sammlung von Attributen und Methoden, die den Zustand und das Verhalten ihrer Instanzen bestimmt. Mit Hilfe der Vererbung werden Attribute und/oder Methoden einer Klasse an eine andere Klasse vererbt. Die vererbende Klasse wird als Basisklasse – alternativ auch als Super, Eltern- oder Oberklasse – und die erbende Klasse als abgeleitete Klasse – bzw. als Sub-, Kind- oder Unterklasse – bezeichnet.
Die Beziehung zwischen Basisklasse und abgeleiteter Klasse ist dauerhaft, wobei eine abgeleitete Klasse die Liste der Attribute und Methoden erweitern sowie Methoden umdefinieren kann, sofern die Modifikatoren der Basisklasse dies erlauben. Damit kann eine neue Klasse eine Erweiterung oder eine Einschränkung der ursprünglichen Klasse sein. Erbt eine abgeleitete Klasse von mehr als einer Basisklasse, ist dies eine sogenannte Mehrfachvererbung.
Die Generalisierungshierarchie
Eine Basisklasse kann auch als Verallgemeinerung bzw. Generalisierung ihrer abgeleiteten Klassen gesehen werden, da ihre Attribute und Methoden die Gemeinsamkeiten aller abgeleiteten Klassen festlegen. In diesem Zuge wird auch von Generalisierungshierarchie gesprochen. Ein ähnlicher Begriff in diesem Zusammenhang ist die Vererbungshierarchie, die im Kontext der Erhebung von Anforderungen und bei der Systemstrukturierung gerne genutzt wird. Tiefe Vererbungshierarchien gilt es jedoch zu vermeiden, da sie entsprechende Klassen und den darin enthaltenen Code stark koppeln.
In der UML wird eine Vererbungsbeziehung durch einen Pfeil mit dreieckiger Spitze dargestellt, der von der abgeleiteten Klasse zur Basisklasse zeigt. Geerbte Attribute und Methoden werden in der Darstellung der abgeleiteten Klasse nicht wiederholt.
Die Inhalte auf dieser Seite dürfen Sie gerne teilen oder verlinken.
Wir suchen Softwareentwickler. Berufseinsteigerinnen, Entwickler mit einigen und Expertinnen mit vielen Jahren Erfahrung.
Bei der Implementierung von Clean Code wird empfohlen, anstelle von Vererbungen Kompositionen zu verwenden. FCoI – Favour Composition over Inheritance nennt sich das entsprechende Prinzip.
Hier finden Sie eine umfangreiche Beschreibung der Vererbung inklusive Beispiele und Besonderheiten.
Und hier finden Sie ergänzende Informationen aus unserer Rubrik Wissen kompakt: