Esercitazione PR2
Martedì 3 ottobre 2017

ISTRUZIONI E TESTI

  • Svolgere gli esercizi proposti in una nuova directory/progetto. Ricordarsi di importare una classe adeguata per l'I/O da tastiera.
  • Verificare di aver installato correttamente il sistema Java, compilando ed eseguendo (eventualmente con javac e java) un semplice programma, per esempio Benvenuto.

  • [1] Il file Book.java contiene la definizione dell'interfaccia per descrivere un libro. Si definisca una classe java MyBook che implementa l'interfaccia Book.

  • Si corredi la classe degli ovvi metodi toString e equals, e la si testi utilizzando la classe TestBook.

    Soluzione: La classe MyBook

  • [2] Il file Library.java contiene la definizione dell'interfaccia per realizzare una biblioteca. Si definisca una classe java MyLibrary che implementa l'interfaccia Library. La classe MyLibrary deve utilizzare come struttura dati di supporto all'implementazione una lista concatenata i cui nodi hanno la struttura (eventualmente estesa con opportuni metodi)
     public class BookNode {
       private Book bk;
       private BookNode next;
     }
    
  • Si testi la classe utilizzando la classe TestLibrary.

    Soluzione: La classe MyLibrary

  • [3] Si definisca la classe MyIndexedBook che estende la classe MyBook e implementa l'interfaccia IndexedBook in modo che ogni libro contenga anche un codice identificativo e l'informazione relativa al genere (quale narrativa, guida di viaggio, etc.).

  • Soluzione: La classe MyIndexedBook

  • [4] Si definisca la classe MyIndexedLibrary che estende la classe MyLibrary e implementa l'interfaccia IndexedLibrary in modo che ad ogni volume che viene inserito sia associato un codice identificativo univoco.

  • Si testi la classe utilizzando la classe TestIndexedLibrary.

    Soluzione: La classe MyIndexedLibrary