Bibliotheksverwaltung mit Klassenvererbung
Swift
Medium
classes
Aufgabe «Bibliotheksverwaltung mit Klassenvererbung»
Erstellen Sie eine Klasse LibraryItem mit den Feldern title (String), year (Int) und einer Methode description(), die einen String der Form "Title: \(title), Year: \(year)" zurückgibt. Erstellen Sie dann eine Klasse Book, die von LibraryItem erbt, mit einem zusätzlichen Feld author (String). Überschreiben Sie die Methode description() so, dass sie einen String der Form "Book: \(title) by \(author), \(year)" zurückgibt. Im Hauptprogramm lesen Sie 6 Zeilen ein: zuerst 3 Zeilen zum Erstellen eines LibraryItem-Objekts (Titel, Jahr), dann 3 Zeilen zum Erstellen eines Book-Objekts (Titel, Jahr, Autor). Geben Sie die Ergebnisse des Aufrufs von description() für jedes Objekt in separaten Zeilen aus. Es ist garantiert, dass das Jahr eine ganze Zahl ist.
Eingabeformat
Sechs Zeilen: die erste Zeile ist der Titel des ersten Objekts (LibraryItem), die zweite ist das Jahr des ersten Objekts, die dritte ist der Titel des zweiten Objekts (Book), die vierte ist das Jahr des zweiten Objekts, die fünfte ist der Autor des zweiten Objekts, die sechste ist eine leere Zeile (wird nicht verwendet).
Ausgabeformat
Zwei Zeilen: die erste ist das Ergebnis von description() für LibraryItem, die zweite ist das Ergebnis von description() für Book.
Beispiele
Beispiel 1
EINGABE
7
ADD Война и мир Толстой 1869
ADD Преступление и наказание Достоевский 1866
ADD Анна Каренина Толстой 1877
FIND_AUTHOR Толстой
FIND_YEAR 1870
FIND_AUTHOR Пушкин
AUSGABE
Title: Война и мир, Year: 1869
Book: Преступление и наказание by Достоевский, 1866
Beispiel 2
EINGABE
6
add 1984 GeorgeOrwell 1949
add BraveNewWorld AldousHuxley 1932
find GeorgeOrwell
borrow 1984
borrow 1984
find GeorgeOrwell
AUSGABE
Title: add, Year: 1984
Book: BraveNewWorld by AldousHuxley, 1932
main.swift