12 Vererbung in Java: Erweitern von Klassen und Überschreiben von Methoden

12.1 Erweitern von Klassen

In Java wird das extends-Schlüsselwort verwendet, um eine Klasse zu erweitern und die Eigenschaften und Methoden der übergeordneten Klasse zu erben.

12.1.1 Grundlegende Vererbung

public class Animal {
    void makeSound() {
        System.out.println("Some generic animal sound");
    }
}

public class Dog extends Animal {
    // Dog erbt alle Methoden und Attribute von Animal
}

12.1.2 Zugriff auf die Methode der übergeordneten Klasse

Dog myDog = new Dog();
myDog.makeSound();  // Ausgabe: "Some generic animal sound"

12.2 Überschreiben von Methoden

Das Überschreiben von Methoden ermöglicht es einer Unterklasse, eine Methode der übergeordneten Klasse zu ersetzen.

12.2.1 Methode Überschreiben

public class Dog extends Animal {
    @Override
    void makeSound() {
        System.out.println("Woof, woof!");
    }
}

12.2.2 Anwendung der überschriebenen Methode

Dog myDog = new Dog();
myDog.makeSound();  // Ausgabe: "Woof, woof!"

12.2.3 Zugriff auf die Methode der übergeordneten Klasse mit super

public class Dog extends Animal {
    @Override
    void makeSound() {
        super.makeSound();
        System.out.println("Woof, woof!");
    }
}

Vererbung ist ein Schlüsselkonzept der objektorientierten Programmierung, das Wiederverwendbarkeit, Organisation und Strukturierung des Codes ermöglicht. Es ist ein effizientes Mittel, um verwandte Klassen zu organisieren und redundanten Code zu reduzieren. Methodenüberschreibung ermöglicht es, spezialisiertes Verhalten in Unterlassen einzuführen, während das Grundverhalten von der übergeordneten Klasse geerbt wird.