2017-04-06 3 views
0

Mein Lehrer gab mir eine Übung über Schnittstellen, mit denen ich nicht wirklich umzugehen weiß. Ich erhielt eine Schnittstelle und wurde angewiesen, ein Klassenbuch zu implementieren, das diese Schnittstelle implementiert.Verwendung von Interface-Konstanten im Konstruktor der implementierenden Klasse

Klassenbuch sollte Attribute isAvailable, Name und Bewertung haben.

Meine Frage ist, in dieser Übung, wenn ich eine Instanz von Buch in der Hauptmethode erstellen werde, dann während des Schreibens der Bewertung im Konstruktor muss ich garantieren, dass die Bewertung in der gleichen Weise geschrieben wird wie Variablen in Schnittstelle benannt sind? Und wenn ich etwas anderes schreibe, dann wäre das ein Fehler, weil ich keine Interface-Konstanten verwende, die ich haben sollte? Ich bin mir nicht sicher, ob ich die Buchklasse gut verstanden und umgesetzt habe.

+0

Die "Schnittstelle" erfordert nur, dass Sie die Verfügbarkeit validieren. Ich würde sagen, dass die Bewertungen ein Ablenkungsmanöver sind. –

+0

Profi-Tipp: Ändere 'DEFAULT_NAME' für einige Extrapunkte zum am häufigsten zitierten Java-Buch deines Professors. – domsson

Antwort

0

In Ihrer Hauptmethode, wenn Sie ein Buchobjekt erstellen, übergeben Sie BookService. (Bewertung) als Parameter.

Beispiel:

Book myBook = new Book(name, BookService.THREE_STARS, true); 

Je nachdem, wie Sie Eingabe bekommen, möchten Sie vielleicht einen Schalter Fall schreiben Benutzereingabe in eine dieser Konstanten zu ändern, und dann können Sie die folgenden Aktionen aus.

Book myBook = new Book(name, rating, true); 

Bei "Bewertung" wurde der Wert einer der Konstanten zugewiesen.

Verwandte Themen