★ Aan de slag 73 (verdiepen)

Als toepassing kijken we naar een eenvoudige opzet van een cijferadministratie.
De gebruiker voert met behulp van de knop Voeg toe de naam van de leerling en het rapportcijfer in.
Een leerling moet uit de lijst verwijderd kunnen worden.
De lijst kan gesorteerd worden op naam en op cijfer.
Tevens kan het gemiddelde van de klas opgevraagd worden.

De interface bestaat uit drie invoervelden met labels, vijf knoppen, een lijst waarin de namen en de cijfers worden getoond.

  1. Ontwerp de interface.

De gegevens die we moeten bijhouden zijn de naam van de leerling en het rapportcijfer.
Daarvoor maken we een aparte klasse Leerling.

De klasse Leerling bevat twee velden voor het bijhouden van de gegevens.
Deze velden worden public gedeclareerd.
Daarnaast heeft de klasse heeft een methode:

void setLeerling(Leerling l)     Wijzigt de naam en het cijfer van de leerling

  1. Schrijf de klasse Leerling.

Van deze klasse heb je een reeks van instanties nodig om alle leerlingen op te slaan.
Het ligt voor de hand om hiervoor een array te gebruiken.
We gaan ervan uit dat het programma dertig leerlingen moet kunnen bijhouden.
Als eerste moet je een naam declareren (referentie) voor de array: leerlingRij.
Daarna maak je een nieuw array-object met behulp van new.

  1. Declareer de array leerlingRij.

De array bevat op dit moment alleen nog maar de referenties voor leerlingRij.
Als laatste stap moet je de array vullen met objecten.
Dat gaat vaak het eenvoudigst door in de start-methode van de app met een for-statement de array te initialiseren:

  1. Vul de array met objecten van de klasse Leerling.
  2. Schrijf de event-handlers van de knop Voeg toe en Verwijder.
    Schrijf een methode vulLijst() om de gevens in de lijst te zetten.
  3. Test de app.
  4. Schrijf de event-handlers voor de knoppen Sorteer naam en Sorteer cijfer.
    Gebruik hiervoor het selection sort algoritme.
  5. Test de app.
  6. Schrijf de event-handler voor de knop Gemiddelde klas.
  7. Test de app.