Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

CardDeck-objekter inneholder initielt et visst antall kort av de fire kortfargene kortfargene 'S''H''D' og 'C'. Klassen inneholder standardmetoder for å lese hvor mange og hvilke kort, og en metoder metode for å endre tilstand.

Konstruktør:

...

  • getCardCount() - returnerer hvor mange Card-objekter som CardDeck-objektet inneholder.
  • getCard(int n) - returnerer kort nr. n eller utløser et IllegalArgumentException hvis n ikke er gyldig. Kort nr 0 er det første kortet i kortstokken. 

Endringsmetode:

  • shufflePerfectly() - stokker kortstokken ved å dele den i to like store deler og flette de to delene perfekt, slik at kortet på toppen forblir på toppen og kortet på bunnen forblir på bunnen (se http://en.wikipedia.org/wiki/Out_shuffle).

Exercise-panelet

Bruk av Exercise-panelet er obligatorisk for denne øvingen. Du må ha panelet åpent med NimCard.ex-filen (tests > encapsulation > NimCard.ex) i før du begynner med øvingenoppgaven. For mer informasjon/hjelp, se nederst på forrige side, altså hovedsiden for Øving 23.

...

Oppgave: Java-kode

Skriv Card- og CardDeck-klassene, slik at de har ønsket oppførsel og er skikkelig innkapslet.

Del 2: JavaFX

Kjør den tilhørende JavaFX-applikasjonen (kjør CardDeck.fxml som FXML Application) og observer hva som skjer. Åpne CardDeckController.java og finn ut hvor CardDeck-klassen din blir brukt, og kommenter hva som skjer med den. Det er ikke et krav at du forstår resten av koden i CardDeckController, du skal kun forklare hvordan klassen din blir brukt.

 

Testkode for denne oppgaven finner du her: encapsulation/CardDeckTest.java og her: encapsulation/CardTest.java

Originalkoden (jextest) for testene finner du her: encapsulation/Card.jextest og her: encapsulation/CardDeck.jextestHjelp til kjøring av JavaFX og generelt om øvinger finner du i Hjelp til øvinger.

 

Include Page
Bunntekst for oppgaver
Bunntekst for oppgaver

...