Ja. Durch die Verwendung einer Schnittstelle kann eine Konstante von mehreren Klassen verwendet werden. Das hilft die Klassen konsistent zu halten.
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.