Vererbung
Kategorie: Programmierung
Definition
Vererbung ist ein Konzept der objektorientierten Programmierung (OOP). Dabei kann eine Klasse Eigenschaften und Methoden einer anderen Klasse übernehmen. Dadurch wird Code wiederverwendbar und übersichtlicher.
Warum Vererbung?
Vererbung verhindert doppelte Programmierung.
Gemeinsame Eigenschaften und Methoden müssen nur einmal definiert werden und können anschließend von anderen Klassen übernommen werden.
Grundbegriffe
Basisklasse (Superklasse):
Die Klasse, von der geerbt wird.
Abgeleitete Klasse (Unterklasse):
Die Klasse, die Eigenschaften und Methoden übernimmt.
Beispiel aus der Praxis
Basisklasse:
Fahrzeug
Unterklassen:
• Auto
• Motorrad
• LKW
Alle Fahrzeuge besitzen gemeinsame Eigenschaften wie Geschwindigkeit oder Marke.
Basisklasse
class Fahrzeug {
marke: string;
geschwindigkeit: number;
fahren() {
console.log('Fährt');
}
}
Unterklasse
class Auto extends Fahrzeug {
tueren: number;
}
Was wird vererbt?
Eine Unterklasse übernimmt:
• Attribute
• Methoden
der Basisklasse.
Eigene Eigenschaften ergänzen
Eine Unterklasse kann zusätzliche Attribute und Methoden besitzen.
Beispiel:
Ein Auto besitzt zusätzlich die Anzahl der Türen.
Methoden überschreiben
Eine Unterklasse kann geerbte Methoden anpassen.
Dies wird als Überschreiben (Override) bezeichnet.
Beispiel Überschreiben
class Auto extends Fahrzeug {
fahren() {
console.log('Auto fährt');
}
}
Vorteile der Vererbung
✓ Weniger doppelter Code
✓ Bessere Wartbarkeit
✓ Höhere Wiederverwendbarkeit
✓ Klare Strukturierung
Nachteile der Vererbung
✗ Zu tiefe Vererbungshierarchien können unübersichtlich werden
✗ Änderungen an der Basisklasse können viele Unterklassen beeinflussen
Vererbungshierarchie
Lebewesen
├─ Tier
│ ├─ Hund
│ └─ Katze
└─ Mensch
Eigenschaften werden von oben nach unten vererbt.
Praxisbeispiel Unternehmen
Basisklasse:
Mitarbeiter
Unterklassen:
• Entwickler
• Administrator
• Projektleiter
Alle Mitarbeiter besitzen Name und Personalnummer.
Vererbung vs Kopieren
Bei Vererbung wird Code wiederverwendet.
Beim Kopieren entsteht doppelter Code, der später mehrfach gepflegt werden muss.
Typische Prüfungsfrage
Was versteht man unter Vererbung?
Eine Klasse übernimmt Eigenschaften und Methoden einer anderen Klasse.
Typische Prüfungsfrage
Was ist eine Basisklasse?
Die Klasse, von der geerbt wird.
Typische Prüfungsfrage
Was ist eine Unterklasse?
Die Klasse, die Eigenschaften und Methoden einer Basisklasse übernimmt.
Merksatz
Vererbung ermöglicht die Wiederverwendung von Eigenschaften und Methoden bestehender Klassen.