m1dnight
Legacy Member
Dag mensen,
Ik heb voor school een opdracht om een quiz te programmeren in JAVA. Nu zit ik met een probleem om een constructie uit te voeren.
Ik vind het nogal moeilijk om een degelijk beeld te schetsen van mijn probleeem. Vandaar stop ik er maar de code bij.
Het zit dus als volgt:
Ik heb een klasse GUI extends JFrame, een klasse Vraag, met als subklassen GoedfoutVraag en MeerkeuzeVraag.
Hier zie je dus de abstracte methodes die overridden worden door de subklassen.
Vervolgens heb ik deze subklassen met hun attributen:
Dit werkt allemaal best goed.
Nu zit op een punt, dat ik een methode aanroep in mijn klasse DatabaseCon "vulArray()". Deze zal een array Vraag[] array; vullen met X aantal objecten die ofwel een meerkeuzeVraag zijn, ofwel een goedFoutVraag.
Deze array gaat dan naar mijn methode GUI. Hier zou ik de waarden van elk object moeten ophalen. Dus voor een goedfoutvraag "goed" of "fout". En voor een meerkeuzeVraag "Fout1" tem 3. En het correcte antwoord.
Ik had dan bedacht instanceOf. Maar ik vond op het net dat dit niet netjes is om te gebruiken. DAt het beter is een een overridden methode te gebruiken.
Ik mijn klasse GUI heb ik 2 panels, eentje GoedFout, en eentje Meerkeuzevraag. Met elk hun bijhorende componenten.
Nu is mijn probleem, hoe krijg ik van beide componenten via hun overridden methode, de waarden naar mijn componenten? (setText van de componenten etc).
Ik kan bedenken dat ik bij beide methodes een array return met string waarden? Maar volgens mij is dit een omweg, in plaats van een degelijke oplossing.
Ik heb geprobeerd een duidelijk beeld te schetsen. Hopelijk kan ik op hulp rekenen.
Bedankt mensen!
Edit: Indien de code nodig zou zijn, vraag maar..
Ik heb voor school een opdracht om een quiz te programmeren in JAVA. Nu zit ik met een probleem om een constructie uit te voeren.
Ik vind het nogal moeilijk om een degelijk beeld te schetsen van mijn probleeem. Vandaar stop ik er maar de code bij.
Het zit dus als volgt:
Ik heb een klasse GUI extends JFrame, een klasse Vraag, met als subklassen GoedfoutVraag en MeerkeuzeVraag.
Code:
public abstract class Vraag {
private String vraagzin;
private int gewicht;
...
public abstract String getAntwoord();
public abstract void toonVraag();
public abstract String getInstructie();
Vervolgens heb ik deze subklassen met hun attributen:
Code:
public class MeerkeuzeVraag extends Vraag {
private String antwoord, fout1, fout2, fout3;
Code:
public class GoedFoutVraag extends Vraag {
private String antwoord;
Dit werkt allemaal best goed.
Nu zit op een punt, dat ik een methode aanroep in mijn klasse DatabaseCon "vulArray()". Deze zal een array Vraag[] array; vullen met X aantal objecten die ofwel een meerkeuzeVraag zijn, ofwel een goedFoutVraag.
Deze array gaat dan naar mijn methode GUI. Hier zou ik de waarden van elk object moeten ophalen. Dus voor een goedfoutvraag "goed" of "fout". En voor een meerkeuzeVraag "Fout1" tem 3. En het correcte antwoord.
Ik had dan bedacht instanceOf. Maar ik vond op het net dat dit niet netjes is om te gebruiken. DAt het beter is een een overridden methode te gebruiken.
Ik mijn klasse GUI heb ik 2 panels, eentje GoedFout, en eentje Meerkeuzevraag. Met elk hun bijhorende componenten.
Nu is mijn probleem, hoe krijg ik van beide componenten via hun overridden methode, de waarden naar mijn componenten? (setText van de componenten etc).
Ik kan bedenken dat ik bij beide methodes een array return met string waarden? Maar volgens mij is dit een omweg, in plaats van een degelijke oplossing.
Ik heb geprobeerd een duidelijk beeld te schetsen. Hopelijk kan ik op hulp rekenen.
Bedankt mensen!
Edit: Indien de code nodig zou zijn, vraag maar..