Deze opgave is het eerste deel van de Puntenboek-opgave.

Jouw score voor deze reeks?

In deze opgave zal je, gespreid over 2 deelopgaves, een programma maken waarin je de punten van studenten kan beheren. Het eerste deel van deze opgave is een oefening op het modelleren van klassen.

Opgave

Maak een Java-klasse Student. Deze klasse heeft drie instantievariabelen, voor elk van deze drie instantievariabelen een bijbehorende accessor en mutator, een constructor en nog drie extra methodes:

Instantievariabelen

Een object van de Student-klasse moet minstens volgende instantievariabelen bevatten:

Constructor

De constructor van de Student-klasse moet volgende signatuur hebben:

Student(String name, int age, String city);

Accessors

Elke instantievariabele moet een accessor hebben, volgende methoden worden dus verwacht:

// De leeftijd van de student opvragen
int getAge();

// De woonplaats van de student opvragen
String getCity();

// De naam van de student opvragen
String getName();

Mutators

Elke instantievariabele moet ook kunnen aangepast worden, dit doe je door volgende methodes te implementeren:

// De leeftijd van de student veranderen in newAge
void setAge(int newAge);

// De woonplaats van de student veranderen in newCity
void setCity(String newCity);

// De naam van de student veranderen in newName
void setName(String newName);

Extra methodes

Naast bovenstaande methodes, dien je ook nog onderstaande drie methodes te implementeren. Voor de methodes isOlderThan en isYoungerThan geldt dat, indien beide studenten dezelfde leeftijd hebben, deze false moeten teruggeven.

// Geeft true terug als de student ouder is dan otherStudent
boolean isOlderThan(Student otherStudent);

// Geeft true terug als de student jonger is dan otherStudent
boolean isYoungerThan(Student otherStudent);

// Geeft true terug als beide studenten in dezelfde stad wonen
boolean livesInSameCity(Student otherStudent);

Hierbij nog wat uitleg over de Dodona-testen voor deze oefening: