I denne oppgaven skal vi modellere 2 typer togvogner, og lære hvordan arv kan forenkle det.
Del 1 - TrainCar
I denne delen skal du lage en enkel togvogn, kall klassen TrainCar. Den skal ha følgende funksjonalitet:
- TrainCar(int) - en konstruktor som tar inn hvor mye en tom vogn veier.
- int getTotalWeight - returnerer en vogns totale vekt.
Del 2 - CargoCar og PassengerCar
I denne delen skal du lage to forskjellige typer togvogner. Begge skal arve fra TrainCar.
CargoCar:
En lastevogn frakter diverse ting og tang. Dette må taes høyde for i klassen ved hjelp av følgende konstruktor:
- CargoCar(int, int) - her taes inn hvor mye en tom vogn veier, i tillegg hvor mye vognen sin last veier.
- int getCargoWeight() - returnerer hvor mye lasten veier.
PassengerCar:
- PassengerCar(int, int) - her taes inn hvor mye en tom vogn veier, og hvor mange passasjerer det er i vognen.
- int getPassengerCount() - returner antall passasjerer.
Redefiner getTotalWeight() i CargoCar og PassengerCar til å returnere en tom vogn sin vekt pluss lasten/passasjerer. Anta at en passasjer veier 80 kg.
Del 3 - Locomotive
Klassen Locomotive har et sett med vogner.
- addTrainCar() - denne metoden skal ta inn en togvogn og knytte den til Locomotive.
- String toString() - Redefiner Locomotive sin toString-metode. Den skal skrive ut en oversikt over alle vognene som er knyttet til den. Oversikten skal inneholde Vogntype og total vekt. Passasjervogner skal i tillegg ah med antall passasjerer. Lastevogner skal ha med hvor mye lasten veier.
Sidetype | Dekningsgrad | Omfang | Ferdig |
---|---|---|---|
Oppgave | ? | ? | 40 |