Vererbung
In diesem Kapitel lernen wir ein weiteres sehr wichtiges Konzept von Java bzw. von objektorientierter Programmierung generell kennen: die Vererbung.
Vererbung bedeutet, das man aus einer Klasse eine neue Klasse ableitet, die alle Eigenschaften und Methoden der Ursprungsklasse übernimmt, jedoch auch noch weitere, eigene Eigenschaften und Methoden besitzt. Vererbung wird in der Regel dazu genutzt, um eine „ist-ein“ Beziehung zu modellieren, z.B. ein Mensch ist ein Lebewesen, ein Hund ist ein Haustier, ein Haustier ist ein Tier, ein Tier ist ein Lebewesen, usw. Mittels Vererbung können also Klassenhierarchien gebildet werden. Man spricht in diesem Zusammenhang von Oberklassen und Unterklassen: Lebewesen
ist die Oberklasse von Mensch
und Mensch
ist eine Unterklasse von Lebewesen
.
Um die Vererbung und deren Sinn besser zu verstehen, sehen wir uns jetzt ein einfaches Beispiel an:
public class Mitarbeiter
{
public String name;
public String adresse;
public long sozialversicherungsNummer;
}
public class Kunde
{
public String name;
public String adresse;
public long kundenNummer;
public long[] rechnungsNummern;
}
Wir sehen hier zwei eigenständige Klassen, die programmiertechnisch betrachtet in keinem Zusammenhang stehen. Die Klassen könnten zum Beispiel aus einer Buchhaltungssoftware stammen, die dabei hilft, den Überblick über Geschäftsvorgänge zu behalten. Die beiden Klassen sollen Objekte aus der „echten Welt“ modellieren, nämlich Mitarbeiter und Kunden. Ein Mitarbeiter wird in diesem einfachen Beispiel charakterisiert durch Name, Adresse und Sozialversicherungsnummer, ein Kunde durch Name, Adresse, Kundennummer und einem Array, das die Rechnungsnummern des Kunden beinhaltet.
Auffällig ist, dass sowohl die Klasse Kunde
als auch die Klasse Mitarbeiter
die Attribute name
und adresse
beinhaltet. Das bedeutet, dass wir an dieser Stelle abstrahieren können: wir haben zwei sehr konkrete Klassen, die sehr konkrete Objekte beschreiben. Wir suchen nach Gemeinsamkeiten innerhalb dieser Klassen und bilden diese Gemeinsamkeiten in einer gemeinsamen Oberklasse für die beiden konkreten Klassen ab.
Oder anders ausgedrückt: wir haben zwei spezielle Arten von Objekten, nämlich Mitarbeiter und Kunden. Und nun versuchen wir, einen allgemeineren Begriff zu finden, der beide Arten von Objekten abdeckt. Welcher Begriff würde also sowohl Kunden als auch Mitarbeiter abdecken? Nun, zum Beispiel handelt es sich sowohl bei Kunden als auch bei Mitarbeitern um Personen. Eine Oberklasse Person
wäre demnach also die Verallgemeinerung der Unterklasse Mitarbeiter und Kunde.
Das Tutorial steht dann auch zum Download im PDF-Format zur Verfügung.
Eine ausführliche Liste unserer Buchempfehlungen für Java finden Sie hier.
Java-Tutorial Kapitel:
1. Grundlagen: Compiler und Entwicklungsumgebung2. Kernelemente: Variablen und Ausdrücke
3. Ablaufsteuerung in Java
4. Überblick Objektorientierung
5. Primitive Datentypen
6. Ausdrücke und Operatoren
7. Arrays in Java
8. Zeichenketten
9. Klassen und Objekte
10. Referenzen und Parameter
11. Vererbung in Java
12. Exceptions
13. Generics
14. Collections
15. Dateiverarbeitung in Java
16. Nebenläufigkeit
17. Netzwerkprogrammierung
18. Grafische Oberflächen (GUIs)
19. Java-Webtipps
20. Code-Download und Übungen
Für den Zugriff auf die Kapitel 5 - 20 ist eine Registrierung notwendig.
Einloggen
Wenn Sie noch kein Benutzerkonto bei programmierenlernen24.de haben, müssen Sie sich zunächst registrieren, um vollen Zugriff auf unser Java-Tutorial zu bekommen.
Passwort vergessen? Lassen Sie sich hier ein neues zusenden.
Unsere Buchempfehlungen
Oder sehen Sie sich die vollständige Liste der Empfehlungen für Java an.Wir haben auch eine Empfehlung für einen Java-Fernkurs parat.