Methode starttest wordt slechts deels getest !!!
Maak een Java-klasse WoordenTrainer
. Deze klasse implementeert een programma dat kan gebruikt worden voor het inoefenen van een vocabularium. De WoordenTrainer klasse maakt gebruik van de Woord Interface en zorgt er dus zo voor dat de WoordenTrainer kan gebruikt worden met alle klassen die de Woord interface implementeren (zoals bijvoorbeeld LatijnsWoord).
De interface Woord kan je hier1 downloaden, het is de bedoeling dat je deze lokaal in dezelfde map plaatst als de WoordenTrainer
klasse, maar je hoeft deze niet in te dienen.
De WoordenTrainer
-klasse bevat de volgende instantievariabelen:
woorden
: een array van Woord objectenaantalWoorden
: een int die bijhoudt hoeveel woorden er reeds werden toegevoegd aan de instantievariabele woorden.maxAantalWoorden
: het max aantal Woord objecten dat kan worden toegevoegd.De constructor heeft als parameter een int. Deze bepaalt het max aantal woorden dat men kan toevoegen. De body van de constructor gebruikt deze int vooor het initaliseren van de woorden instantievariabele.
De WoordenTrainer
-klasse bevat de volgende methoden:
boolean bevatWoord(Woord woord)
: Deze methode gaat na of het woord reeds werd toegevoegd aan de instantievariabele woorden.
Indien dit zo is retourneert de methode true, anders false.boolean addWoord(Woord woord)
: Deze methode retourneert true indien het Woord succesful kan toegevoegd worden aan de woorden instantievariabele. De methode retourneert false indien array vol is en indien woord reeds was toegevoegd.Woord[] getRandomAantalWoorden(int aantal)
: Deze methode retourneert een random selectie van woorden als een array. Het aantal wordt bepaald door de parameter aantal.void startTest(int aantal)
: Deze methode zal via de console voor een random aantal worden de volgende vragen stellen:Vertaling van ubi:
als
Fout antwoord: ubi==>[zodra, wanneer, toen]
Vertaling van ubi:
zodra
Juist antwoord: ubi==>[zodra, wanneer, toen]
Vertaling van pars: helft Gen. enk.? partis Fout antwoord: pars==>[deel] Gen. enk. : partis
Vertaling van pars: deel Gen. enk.? parsi Fout antwoord: pars==>[deel] Gen. enk. : partis
Vertaling van pars: deel Gen. enk.? partis Juist antwoord: pars==>[deel] Gen. enk. : partis
Na het beantwoorden van x aantal vragen zal deze methode het resultaat weergeven in de console als volgt:
Aantal juist: 1 Aantal fout: 4 Score: 1 op 5
String[] vertaling0 = {"zijn"}; woordentrainer.addWoord(new LatijnsWoord("esse", vertaling0)); String[] vertaling1 = {"hij is", "zij is", "het is", "er is"}; woordentrainer.addWoord(new LatijnsWoord("est", vertaling1)); String[] vertaling2 = {"niet"}; woordentrainer.addWoord(new LatijnsWoord("non", vertaling2)); String[] vertaling3 = {"tong", "taal"}; woordentrainer.addWoord(new LatijnsWoord("lingua", vertaling3)); String[] vertaling4 = {"schaduw"}; woordentrainer.addWoord(new LatijnsWoord("umbra", vertaling4)); String[] vertaling5 = {"zijn", "haar", "hun"}; woordentrainer.addWoord(new LatijnsWoord("suus", vertaling5)); String[] vertaling6 = {"geheel", "al", "ieder", "elk"}; woordentrainer.addWoord(new LatijnsWoord("omnis,is,e", vertaling6)); String[] vertaling7 = {"woord"}; woordentrainer.addWoord(new LatijnsWoord("verbum", vertaling7)); String[] vertaling8 = {"vliegen", "wegvliegen"}; woordentrainer.addWoord(new LatijnsWoord("volare", vertaling8)); String[] vertaling9 = {"schrijven"}; woordentrainer.addWoord(new LatijnsWoord("scribere", vertaling9)); String[] vertaling10 = {"blijven", "wachten"}; woordentrainer.addWoord(new LatijnsWoord("manere", vertaling10)); String[] vertaling11 = {"tussen", "tijdens"}; woordentrainer.addWoord(new LatijnsWoord("inter", vertaling11)); String[] vertaling12 = {"wet"}; woordentrainer.addWoord(new LatijnsWoordSubstantief("lex", vertaling12, "legis")); String[] vertaling13 = {"moeder"}; woordentrainer.addWoord(new LatijnsWoordSubstantief("mater", vertaling13, "matris")); String[] vertaling14 = {"studie", "interesse", "enthousiasme"}; woordentrainer.addWoord(new LatijnsWoordSubstantief("studium", vertaling14, "studii")); String[] vertaling15 = {"hard", "streng"}; woordentrainer.addWoord(new LatijnsWoord("durus", vertaling15)); String[] vertaling16 = {"maar"}; woordentrainer.addWoord(new LatijnsWoord("sed", vertaling16)); String[] vertaling17 = {"bloem"}; woordentrainer.addWoord(new LatijnsWoordSubstantief("flos", vertaling17, "floris")); String[] vertaling18 = {"één"}; woordentrainer.addWoord(new LatijnsWoord("unus", vertaling18)); String[] vertaling19 = {"maken"}; woordentrainer.addWoord(new LatijnsWoord("facere", vertaling19));