zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Ja — es sieht so aus als ob wir den gleichen Code zweimal geschrieben haben.

Verwendung von super in einer Subklassen-Methode

Manchmal (wie in diesem Beispiel) möchten wir, dass eine Subklasse ihre eigene Methode hat, aber diese Methode enthält ebenfalls all das, was bereits die Methode der Superklasse tut. In dieser Situation können wir das spezielle Schlüsselwort super verwenden.

Hier ist die Methode von Videoband:

public void anzeigen()
{
  System.out.println( titel + ", " + laenge + " Min. verfuegbar: " + vorhanden );
}

Hier ist die Methode von Spielfilm ohne die Verwendung von super:

public void anzeigen()
{
  System.out.println( titel + ", " + laenge + " Min. verfuegbar: " + vorhanden );
  System.out.println( "Regisseur: " + regisseur + "  " + bewertung );
}

Die Methode von Spielfilm würde besser mit der Anweisung super geschrieben:

public void anzeigen()
{
  super.anzeigen();
  System.out.println( "Regisseur: " + regisseur + "  " + bewertung );
}

Bei der Verwendung in einer Methode muss super nicht als erste Anweisung verwendet werden, anders als bei der Verwendung in einem Konstruktor.

FRAGE 16:

Wir überlegen uns zwei Gründe, warum diese Verwendung von super eine super Sache ist.