Schrijf een klasse Airplane
dat een vliegtuig representeert. We gaan deze klasse gebruiken om een programma te schrijven, waarmee je kan controleren of een vliegtuig klaar is om te vertrekken. Een vliegtuig is klaar om te vertrekken als aan 3 voorwaarden is voldaan:
loadPassengers()
).loadLuggage()
).lockDoors()
en unlockDoors()
).Vooral deze laatste voorwaarde (van de deuren) is problematisch en kan botsen met de eerdere voorwaarden. Als de deuren immers dicht zitten kunnen er ook geen passagiers en bagage worden ingeladen. De deuren moeten dus echt unlocked zijn voordat het laden kan beginnen.
Je dient bovenstaande methoden zelf te implementeren. Je hoeft niet per se individuele passagiers te modelleren, een boolean value waarmee je aangeeft dat iedereen aan boord is en dat alle bagage aan boord is, is voldoende.
Implementeer tenslotte de methode depart()
waarmee je het vliegtuig kan laten vertrekken. Deze methode dient de hierboven genoemde voorwaarden te controleren. Als er iets niet klopt (bijv. de deuren zitten niet dicht), dient hier een correcte foutmelding voor gegeven te worden.
Om je programma eenvoudig te kunnen testen hebben wij je alvast een menu gegeven dat je kan gebruiken, inclusief 3 scenario’s die je zelf kan doorlopen. Denk ook vooral zelf na over eventuele variaties van deze scenario’s en test deze ook! Testen is immers een belangrijk onderdeel van het programmeren.
Nadat menu opties 1, 2 en 3 zijn uitgevoerd, dan pas kunnen we opstijgen..
In het geval dat een van de opties ontbreken, mogen we dus nog niet opstijgen.
De deuren kunnen zowel gelocked als unlocked worden. Dit is wisselbaar.
En natuurlijk mogen er geen passagiers instappen of bagage ingeladen worden als de deuren dicht zitten.