zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Ja. Durch die Verwendung einer Schnittstelle kann eine Konstante von mehreren Klassen verwendet werden. Das hilft die Klassen konsistent zu halten.

Testprogramm

Hier ist ein kleines Programm, das die Klassen testet. Wenn sie das Programm ausführen möchten, kopieren Sie alle Klassen und die Schnittstelle in eine Datei mit dem Namen Kaufhaus.java.

public class Kaufhaus
{

  public static void main ( String[] args )
  {
    Waren         waren        = new Waren( "Tube", 1.40 );
    Lebensmittel  lebensmittel = new Lebensmittel ( "Milch", 0.95, 690 );
    Spielwaren    spiel        = new Spielwaren  ( "Lego", 24.45, 8 );
    Buecher       buch         = new Buecher ( "Emma", 14.95, "Austin" );

    waren.anzeigen();

    lebensmittel.anzeigen();

    spiel.anzeigen();
    System.out.println
      ("Die Steuer betraegt: " + spiel.berechneSteuer() + "\n" );

    buch.anzeigen();
    System.out.println
      ("Die Steuer betraegt: " + buch.berechneSteuer() + "\n" );
  }
}

Die berechneSteuer() Methode wird nur für Objekte verwendet, deren Klassen die Schnittstelle implementieren. Hier ist eine Abbildung, die die Klassen und ihre Objekte zeigt:

In der Abbildung werden Klassen durch Wolken repräsentiert. Pfeile verbinden Subklassen mit Superklassen. Das gepunktete Rechteck repräsentiert die Schnittstelle; gepunktete Pfeile zeigen welche Klassen sie implementieren. Rechtecke repräsentieren Objekte. Pfeile mit einer rechteckigen Spitze verbinden ein Objekt mit seiner Klasse.

FRAGE 13: