ciao a tutti ho un problema nell'interpretazione del seguente esercizio:
Scrivete un programma a oggetti che permetta di descrivere e gestire le informazioni concernenti i locali e i mobili di una casa. È importante che sia possibile aggiungere i differenti piani della casa specificando i locali in essa contenuti. Tramite l’interfaccia utente, per ogni locale dovrà essere possibile specificare le dimensioni e la tipologia (stanza da bagno, cucina, camera da letto, …). Per ogni mobile dovrà essere possibile specificare le dimensioni, il colore e la tipologia (divano, armadio, letto, …). Utilizzate il più possibile il polimorfismo, le interfacce, le classi astratte (ad esempio, per rendere esplicito il fatto che ogni camera da letto contiene dei letti) e le enumerations. Assicuratevi che sia possibile aggiungere nuove tipologie di mobili e locali senza dover modificare in maniera radicale la struttura del programma. In seguito, introducete le funzionalità per calcolare i metri quadri totali di letto che sono presenti nella casa, e per scoprire il colore dei mobili più presente.
in realtà mi è tutto chiaro ma c'è solo una cosa che mi sfugge (vedi frase in rosso).
la mia domanda è:
come posso attraverso un interfaccia rendere esplicito il fatto che ogni camera da letto contiene dei letti?
PREMESSA: sono veramente agli inizi con java ed e' il mio primo linguaggio.
ho iniziato pochi mesi fa e sto affrontando il polimorfismo, l'ereditarietà le classi astratte e le interfacce. dovete immaginarvi che sono alle prime armi pertanto non posso perche non ne sono capace di usare "trick" aggressivi per risolvere tutto e subito.
il mio design è il seguente:
classe astratta casa
che contiene una lista dinamica dei piani
classe piani che estende casa
che contiene una lista dinamica dei locali (di ogni piano ovviamente)
classe astratta mobile che estende casa
classe divano che estende mobile
classe letto che estende mobile
ect ect per ogni parte del mobilio che voglio implementare
classe astratta locale che estende casa
classe bagno che estende locale
classe salotto che estende locale
ect ect per ogni tipo di locale che voglio implementare.
ovviamente e' un disegno scarno ma ho messo l'essenziale per farvi capire la mia pensata,
metodi e variabili d'istanza non le ho implementate tutte perche non e' qui il succo della struttura.
ora mi mancherebbero le interfaccie ma vi giuro che non saprei come sfruttarle...
qualcuno mi potrebbe dare una dritta sull efficiacia di implementarle in questo esercizio?
grazie mille

Rispondi quotando