Om ervaring op te doen met het ontwerpen en schrijven van een klasse ga je een eenvoudig dobbelspel programmeren.
In dit spel mag een speler drie keer gooien met maximaal drie dobbelstenen.
Hij kan besluiten om een of meerdere stenen te laten liggen.
Het doel van het spel is om na drie worpen een zo hoog mogelijke score te behalen.
De interface van het spel staat hiernaast afgebeeld.
De objecten
Welke objecten zijn er te onderscheiden in dit spel?
Wanneer je naar de interface kijkt, zie je twee knoppen: Start Spel en Dobbel.
Deze twee objecten zijn instanties van de klasse Button.
Er zijn drie velden die het resultaat van de worp laten zien en een vierde veld dat de totale score weergeeft.
Dit zijn instanties van de klasse NumberField.
Tenslotte zijn er nog drie selectievakjes. Door een selectievakje aan te vinken geeft de speler aan dat hij deze dobbelsteen laat liggen.
Deze objecten zijn instanties van de klasse Checkbox.
Behalve de objecten die je op de interface ziet, zijn er nog drie objecten: de dobbelstenen waarmee gegooid moet worden.
Java kent geen standaardklasse Dobbelsteen. Die moet je zelf ontwerpen.
Definitie van een klasse
In Java is de basisvorm van een klassendefinitie:
toegang class Naam { body }
Het woord class is in Java een gereserveerd woord en duidt het begin van de definitie van een klasse aan. Daarachter staat de naam van de klasse.
Het is in Java gebruikelijk om de naam van een klasse altijd met een hoofdletter te beginnen.
Voor de class staat een woord dat de toegang tot de klasse specificeert.
Wij komen hier later in deze paragraaf op terug.
Tussen toegang en class staan vaak woorden als static, abstract of final.
Deze woorden geven de klasse een speciale betekenis, die we hier verder niet zullen bespreken.
Ook tussen de naam en de linkeraccolade kunnen nog extra aanduidingen voorkomen.
In de body staan de definities van de attributen, de constructor en de methoden.
De attributen bevatten de eigenschappen van de objecten in de klasse. De methoden definiƫren de acties.
De constructor is een speciale methode, die de naam van de klasse zelf heeft.
In de constructor is vastgelegd, wat er moet gebeuren bij de constructie van een nieuwe instantie van de klasse.