Abgeleitete Klasse

Eine abgeleitete Klasse[1][2] – auch Unterklasse,[3] Subklasse[1][3] (aus englisch subclass), untergeordnete Klasse[2] oder Kindklasse[3] (aus englisch child class) – ist in der objektorientierten Programmierung ein durch das Programmierkonzept der Vererbung erstellter Abkömmling einer anderen Klasse, der Basisklasse. In manchen Programmiersprachen, wie C++, ist es auch möglich, Klassen über Mehrfachvererbung von mehreren anderen Klassen abzuleiten.

Die abgeleitete Klasse erbt alle Attribute (Member) und Methoden der Basisklasse, kann dabei aber nur auf die nicht als privat deklarierten direkt zugreifen. Zusätzlich zu den geerbten Methoden und Attributen können in der abgeleiteten Klasse eigene deklariert werden. Hierfür vorgesehene Methoden der Basisklasse können zudem überschrieben werden, indem in der abgeleiteten Klasse eine Methode mit identischer Signatur deklariert wird.

Manche Programmiersprachen ermöglichen sogenannte finalen Klassen, die nicht abgeleitet werden können. Zum Beispiel dürfen in Java mit final gekennzeichnete Klassen nicht als Basisklasse verwendet werden, in C# lautet das entsprechende Schlüsselwort sealed.

Einzelnachweise

  1. a b Bjarne Stroustrup: Die C++-Programmiersprache. Addison-Wesley, 2000, ISBN 3-8273-1660-X. Kap. 2.6.2 Klassenhierarchien.
  2. a b Einführung in die Programmierung von Microsoft .NET Framework-Anwendungen mit Visual Studio 2005. Microsoft Learning, 2007, Kap. 7.2 Implementieren der Vererbung.
  3. a b c Christian Ullenboom: Java ist auch eine Insel. Galileo Computing, 2009, ISBN 978-3-8362-1371-4, Kapitel 6.8.1 Vererbung in Java.