Basisklasse

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Als Basisklasse,[1][2][3] Oberklasse,[4][5][6] Superklasse[1][5][6] (von englisch superclass), übergeordnete Klasse[3] oder Elternklasse[6] (von englisch parent class) bezeichnet man in der objektorientierten Programmierung Klassen, die ihre Attribute und Methoden an abgeleitete Klassen vererben.

Insbesondere der Begriff Basisklasse soll manchmal verdeutlichen, dass sie der Ausgangspunkt für weitere von ihr abgeleitete Klassen ist und gleichzeitig keine eigenen Basisklassen hat, was dann bedeutet, dass die Basisklasse stets die höchste, im Sinne von Top-down, definierte Klasse in ihrer Klassenhierarchie ist. Es kann aber auch mehr als eine Basisklasse geben, welche dann unabhängig voneinander ein Netz von Unterklassen ergeben. So eine systematisch angelegte Sammlung nennt man auch Klassenbibliothek.

Eine Basisklasse kann auch als abstrakte Basisklasse deklariert sein (englisch abstract base class, kurz ABC[2]) und in dem Fall die direkte Instanziierung von abstrakten Klassen verbieten. Sie dient dann lediglich der Zusammenfassung, der Abstraktion von Attributen und Methoden der von ihr abgeleiteten Klassen.

Einzelnachweise[Bearbeiten]

  1. a b  Bjarne Stroustrup: Die C++-Programmiersprache. 2. Auflage. Addison-Wesley, Bonn 1992 (Originaltitel: The C++ programming language, second edition, reprinted with corrections, übersetzt von Elke Kasimir), ISBN 3-89319-386-3, S. 27.
  2. a b  Scott Meyers: Effektiv C++ programmieren: 50 Möglichkeiten zur Verbesserung Ihrer Programme. 2. Auflage. Addison-Wesley, Bonn 1995 (Originaltitel: Effective C++ – 50 Specific Ways to Improve Your Programs and Design, übersetzt von Elke Kasimir), ISBN 3-89319-816-4, S. 158.
  3. a b  Rebecca Wirfs-Brock, Brian Wilkerson, Lauren Wiener: Objektorientiertes Software-Design. Hanser, München 1993, ISBN 3-446-16319-0, S. 26.
  4.  James Rumbaugh: Objektorientiertes Modellieren und Entwerfen. Hanser, München 1993 (übersetzt von Doris Märtin), ISBN 3-446-17520-2, S. 48.
  5. a b  Bernd Oestereich: Objektorientierte Softwareentwicklung mit der Unified Modeling Language. 3. Auflage. Oldenbourg, München 1997, ISBN 3-486-24319-5, S. 274.
  6. 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.