Vererbung mit extends
- Home
- Tutorials
- Java
- Java Tutorial - Programmieren lernen für Anfänger
- Vererbung mit extends
Eine Superklasse Auto vererbt an die beiden Subklassen BMW und Audi. Diese beiden Subklassen haben Zugriff auf alle Methoden und Variablen der Superklasse Auto die public sind. Gehen wir nun davon aus, dass wir eine public Methode in unserer Auto Superklasse haben, die reparieren() heißt. Und diese Methode soll einfach etwas in die Konsole schreiben, dann können wir diese Methode durch Objekte vom Typen BMW und Audi verwenden.
Damit eine (Sub)Klasse von einer anderen (Super)Klasse erbt, muss man ihr extends KlassenNameDerVererbendenKlasse
anfügen.
Beispiel für Vererbung in Java
public class Panjutorials {
public static void main(String[] args) {
Audi a6 = new Audi();
BMW z4 = new BMW();
a6.reparieren();
z4.reparieren();
}
}
public class Auto {
public void reparieren(){
System.out.println("Das auto wurde repariert!");
}
}
public class Audi extends Auto {
}
public class BMW extends Auto{
}
Obwohl unsere beiden Subklassen Audi und BMW keinerlei Inhalt haben, können wir dennoch Objekte von ihnen erstellen und die Methode reparieren() verwenden. Wenn wir nun wollen, dass für den Fall, dass die Methode reparieren() bei einem AudiObjekt aufgerufen wird, etwas anderes ausgegeben wird, müssen wir eine Methode reparieren() in der Subklasse Audi anlegen die das tut.
public class Audi extends Auto {
public void reparieren(){
System.out.println("Der Audi wurde repariert!");
}
}
Der Audi wurde repariert!
Durch Vererbung ergeben sich daher folgende Vorteile
- Grundlage für Polymorphie ? dazu mehr im Kapitel Polymorphie
- Wiederverwendbarkeit
- keine Quellcode-Duplizierung notwendig
- Fehlerkorrekturen bzw. Änderungen an einer Oberklasse wirken sich automatisch auch auf alle Unterklassen aus
Außerdem zu beachten!
Wenn wir der Methode reparieren in einer der Subklassen einen Parameter hinzufügen würden(dieses Verfahren nennt sich "overloading"), würde es sich um eine komplett neue Methode Handeln und nicht um die gleiche Methode die wir in der Superklasse haben.

Java Tutorial - Programmieren lernen für Anfänger
-
Grundlagen
-
Lektion1.1
-
Lektion1.2
-
Lektion1.3
-
Lektion1.4
-
Lektion1.5
-
Lektion1.6
-
Lektion1.7
-
Lektion1.8
-
Lektion1.9
-
-
Entscheidungen
-
Lektion2.1
-
Lektion2.2
-
Lektion2.3
-
Lektion2.4
-
Lektion2.5
-
Lektion2.6
-
-
Klassen, Objekte und Schleifen
-
Lektion3.1
-
Lektion3.2
-
Lektion3.3
-
Lektion3.4
-
Lektion3.5
-
Lektion3.6
-
Lektion3.7
-
Lektion3.8
-
Lektion3.9
-
-
Arrays und spezielle Klassen
-
Lektion4.1
-
Lektion4.2
-
Lektion4.3
-
Lektion4.4
-
Lektion4.5
-
Lektion4.6
-
Lektion4.7
-
Lektion4.8
-
Lektion4.9
-
Lektion4.10
-
-
Vererbung und Polymorphie
-
Lektion5.1
-
Lektion5.2
-
Lektion5.3
-
-
Weitere Features von Java
-
Lektion6.1
-
Lektion6.2
-
Lektion6.3
-
Lektion6.4
-
Lektion6.5
-
Lektion6.6
-
Lektion6.7
-