Ciao!!!
Sto impazzendo da tre ore con questa traccia e non riesco davvero a capire come risolvere questo esercizio d'esame.
Non ho trovato niente di simile negli esercizi che ho svolto con il libro di Horstmann per cui mi trovo un po' spiazzato con questo.
Implementare in Java una classe ContrattoAuto che modella i contratti di vendita/noleggio di automobili. Ogni contratto è caratterizzato da Targa, Marca, Modello, Colore, Data Sottoscrizione, Pagamento, Numero Rate. Quest’ultimo contiene la lista dei pagamenti effettuati ognuno dei quali è una coppia (numero rata, data di pagamento). Corredare la classe con i metodi
1. paga(int numRata, Data d) che registra il pagamento di una rata.
2. eInRegola(Data d) che restituisce true se sono stati effettuati tutti i pagamenti delle rate fino alla data di oggi.
e due sottoclassi:
ContrattoInLeasing caratterizzata da Tipo Leasing, Importo Riscatto, Importo Rata Mensile e che fornisce il seguente metodo:
1. calcolaDovuto() che restituisce la somma ancora da versare applicando la formula NumeroRateAncoraDaVersare*ImportoRataMensile. Il NumeroRateAncoraDaVersare deve essere calcolato utilizzando le variabili d’istanza di ContrattoAuto.
ContrattoConFinanziamento caratterizzata da Anticipo, Importo Rata, Rata Finale, Durata Garanzia e che fornisce il seguente metodo:
1. calcolaDovuto()che restituisce la somma ancora da versare applicando la formula (NumeroRateAncoraDaVersare*ImportoRata) + Rata Finale. Il NumeroRateAncoraDaVersare deve essere calcolato utilizzando le variabili d’istanza di ContrattoAuto.
Scrivere la classe ElencoContratti che modella una collezione di contratti e fornisce i seguenti metodi:
1. void aggiungiContratto(ContrattoAuto c) che inserisce un contratto nell’archivio.
2. String daiTipoContratto(int i) che restituisce il tipo dell’i-esimo contratto (leasing o acquisto).
3. ContrattoAuto getMinimo(), che restituisce il contratto che ha la minima somma ancora da versare.
4. ContrattoAuto getMassimo(), che restituisce il contratto che ha la massima somma ancora da versare.
5. ArrayList<ContrattoAuto> cerca(String tipo), che cerca e restituisce tutti i contratti di un certo tipo. Definire un’eccezione controllata WrongTypeException per segnalare che tipo non corrisponde ad un tipo di contratto.
Considerando le classi ai punti precedenti, scrivere un programma Java che realizzi un’interfaccia grafica per caricare da un file un insieme di contratti, inserire nuovi contratti, cancellare un contratto, stampare la lista dei contratti, salvare in un file la lista dei contratti, e stampare il minimo e il massimo rispetto al criterio scelto.
Questo è quanto.....dato che non voglio il programma bello e fatto,vorrei almeno capire come strutturare le varie Classi altrimenti all'esame bella figura di m**** perchè devo consegnarlo al max in due ore.
Grazie a tutti!
CIAO![]()

Rispondi quotando