Opgave
Instantievariabelen (1 punt)
Maak een klasse CovidSafe met als instantievariabelen:
- een ArrayList van CovidVaccin objecten met als naam vaccins.
- een ArrayList van CovidTest objecten met als naam testen.
- een String naam
- een String voornaam
Methodes (11 punten)
- Voeg een constructor (2 punten) toe met als parameters een String naam en een String voornaam.
De twee parameters worden gebruikt voor het initialiseren van de instantievariabelen naam en voornaam.
De instantievariabelen vaccins en testen worden geïnitialiseerd met een lege lijst.
- Voeg een methode testID (2 punten) toe met als parameter een CovidVaccin object. Deze methode
retourneert true indien de naam en voornaam horende bij het CovidVaccin object overeenstemt met naam
en voornaam van het huidige CovidSafe object. Overlaad de methode testID maar nu met als parameter een CovidTest object. Deze methode
retourneert true indien de naam en voornaam horende bij het CovidTest object overeenstemt met naam
en voornaam van het huidige CovidSafe object.
- Voeg een methode certificaatUniek (2 punten) toe met als parameter een CovidVaccin object. Deze methode
retourneert true indien het CovidVaccin object nog niet aanwezig is in de instantievariabele vaccins.
Testen of een CovidVaccin reeds aanwezig is, doe je via zijn id. Overlaad de methode certificaatUniek (O,5 punten) maar nu met als parameter een CovidTest object. Deze methode
retourneert true indien het CovidTest object nog niet aanwezig is in de instantievariabele testen. Testen of een
CovidTest reeds aanwezig is, doe je via zijn id.
- Voeg een methode importeerVaccin (1,5 punt) toe met als parameter een CovidVaccin object. Deze methode zal
het CovidVaccin object toevoegen aan de vaccins instantievariabele indien:
- het vaccin eigendom is van dezelfde persoon als het covidsafe object
- het vaccin niet reeds werd toegevoegd
Indien het certificaat succesvol werd toegevoegd wordt true geretourneerd, indien niet
false.
- Voeg een methode importeerTest (0,5 punten) toe met als parameter een CovidTest object. Deze methode zal
het CovidTest object toevoegen aan de vaccins instantievariabele indien:
- de test vaccin eigendom is van dezelfde persoon als het CovidSafe object
- het test niet reeds werd toegevoegd
Indien het certificaat succesvol werd toegevoegd wordt true geretourneerd, indien niet
false.
- Voeg een methode ticket (2 punten) toe zonder parameters. Deze methode retourneert true indien ofwel een
een CovidVaccin werd toegevoegd dat geldig is of er een test werd toegevoegd die nu geldig is.
- Verfijn de methode ticket (1 punt) zodat deze enkel true retourneert voor een CovidVaccin indien de persoon
ook beschikt over een eerste vaccin van hetzelfde type.