Prova al calcolatore

Compito C
Durata: 1:45


Prima parte

La catena di vivaii ``Alberi puntuti'' vuole informatizzare il suo archivio. In particolare, per ogni albero, vanno memorizzate le seguenti informazioni:

tipo
il tipo dell'albero (una stringa)
altezza
l'altezza in centimetri (un intero)
eta
il numero di anni dell'albero (un intero)
venduto
una stringa che indica se l'albero è stato venduto oppure no: questa stringa vale "si" oppure "no"

Si realizzi la classe Albero con le componenti indicate qui sopra. Questa classe deve essere incapsulata (tutte le variabili di istanza devono essere private), e deve avere i metodi get e set per tutte le variabili di istanza. Devono essere inoltre presenti il costruttore a quattro argomenti e i metodi equals e toString


Per ogni vivaio della catenza, vanno memorizzati i dati relativi agli alberi in essa presenti. Si realizzi quindi la classe Vivaio: ogni oggetto di questa classe rappresenta quindi un insieme di oggetti Albero.

La classe deve contenere i seguenti metodi:

Albero readAlbero(BufferedReader br) throws IOException
ha come argomento un BufferedReader, da cui vanno letti i dati di un oggetto Albero; tale oggetto è il valore di ritorno del metodo; il metodo torna null se non è stato possibile leggere i dati dell'albero a causa della fine del file;
Vivaio(String nomefile) throws IOException
il costruttore ha come argomento il nome di un file che contiene i dati degli alberi che vanno memorizzati nell'oggetto Vivaio
void aumentaEta()
alla fine dell'anno, l'età di tutti gli alberi presenti va aumentata di uno; questa operazione viene svolta da questo metodo
Albero piuAlto(String tipo)
ritorna l'albero più alto di un certo tipo (che viene passato come parametro); se non ci sono alberi di quel tipo, si ritorna null