Esercitazione 6: overloading e overriding
Crea la classe VeicoloAmotore e mediante l'ereditarietà implementa la classe Automobile, seguendo il diagramma delle classi UML
realizza l'overloading su almeno un metodo di una delle due classi e
l'overriding di un metodo della classe VeicoloAmotore nella classe Automobile
La classe veicolo a motore
Sviluppa la classe VeicoloAmotore seguendo il diagramma UML e le indicazioni seguenti:
1. Inserisci la visibilità dei membri della classe
2. "avvia" ha lo scopo di variare il numero di giri del motore che potranno essere solo >0
3. "spegni" pone a zero i giri del motore
4. "aumentaGiri" incrementa di n i giri del motore
5. "diminuisciGiri" decrementa di n i giri che non possono diventare negativi
6. Algoritmo
"scomponiGiri scompone in fattori primi il numero di giri “num”
Es. num = 12 output “2,2,3”
La classe Automobile
Sviluppa la classe Automobile seguendo il diagramma UML e le indicazioni seguenti:
1. Inserisci la visibilità dei membri della classe
2. "avviaMotore" ha lo scopo di avviare il motore inserendo una velocità e conseguentemente aumentare il numero di giri del motore
3. "cambiaMarcia" controlla che sia una marcia valida e cambia la posizione
4. Aggiungi i metodi che ritieni più utili
5. Aggiungi l'overloading di un metodo
6. Aggiungi l'override di un metodo della classe VeicoloAmotore
La classe UsaVeicolo
Sviluppa la classe UsaVeicolo seguendo le specifiche segenti: