Fondamenti di Informatica I
Corso di Laurea in Ingegneria Informatica e Ingegneria Automatica
Si vuole realizzare un programma per la gestione di libri in prestito in una biblioteca. Per ciascun libro sono memorizzate le seguenti informazioni: autore e titolo del libro, status del libro (in prestito o meno), nominativo della persona a cui il libro è in prestito.
Parte 1.
Scrivere una classe Libro
che implementi i seguenti metodi:
Libro(String a, String t)
: costruttore che crea un libro
con autore a
e titolo t
che non è in
prestito;
String toString()
: che restituisce una stringa con
tutte le informazioni del libro;
void prestato(String n)
: che modifica le informazioni del
libro specificando che esso è in prestito alla persona
identificata dal nome n
;
void restituito()
: che modifica le informazioni del libro
specificando che esso è stato restituito;
boolean inPrestito()
: che verifica se un libro è in
prestito;
String chiHaIlLibro()
: che restituisce il nominativo della
persona che ha il libro in prestito (oppure null
se il libro
non è in prestito);
String getAutore()
: che restituisce l'autore del libro;
String getTitolo()
: che restituisce il titolo del libro.
Programma di esempio:
ProvaLibro.java
Parte 2.
Scrivere una classe UsaLibro
, cliente di Libro
, che
contiene il seguente metodo statico pubblico:
static int contaLibriInPrestito(Libro[] d, String a)
: che,
dati un archivio d
di libri, rappresentato come un array di
libri, e il nome a
di un autore, restituisce il numero di
libri dell'autore a
che sono in prestito.
Programma di esempio:
ProvaUsaLibro.java
Soluzioni:
Libro.java
,
UsaLibro.java