Sobes.tech
Junior — Middle

Welche Änderungen müssen an der Klassendefinition vorgenommen werden, um ihre Fähigkeit zur Verwendung von Polymorphismus zu gewährleisten?

sobes.tech KI

Antwort von AI

Um Polymorphismus in Java zu ermöglichen, muss Folgendes beachtet werden:

  • Methoden, die in Unterklassen überschrieben werden sollen, dürfen nicht statisch oder final sein.
  • Das Schlüsselwort override sollte in Unterklassen verwendet werden, um Methoden der Basisklasse zu überschreiben.
  • In der Basisklasse sollten die Methoden als public oder protected deklariert sein (damit Unterklassen sie überschreiben können).

Beispiel:

class Animal {
    public void sound() {
        System.out.println("Ein Geräusch");
    }
}

class Dog extends Animal {
    @Override
    public void sound() {
        System.out.println("Bellen");
    }
}

// Verwendung von Polymorphismus
Animal animal = new Dog();
animal.sound(); // Gibt "Bellen" aus

Daher sollten Methoden, um Polymorphismus zu unterstützen, virtuell sein (in Java sind alle nicht-statischen Methoden standardmäßig virtuell). Wichtig ist, Methoden nicht als static oder final zu deklarieren.