You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Oppgaven utvider Tilstand og oppførsel - Location-oppgave med minimum- og maksimum-verdier for x og y og legger til valideringsmetoder.

Vi tar utgangspunkt i Tilstand og oppførsel - Location-oppgave og legger til attributter for minimum- og maksimum-verdier for x og y, som følger:

  • minX, minX - minste lovlige x- og y-verdier
  • maxX, maxY - største lovlige x- og y-verdier

En kan tenke på disse som hjørnene i et rektangel, og at punktet som Location-objektet representerer må være inni dette rektanglet.

Del 1

Definer og implementer en valideringsmetode for koordinater, boolean isValidCoordinates(int x, int y), og bruk denne i left-, right-, up- og down-metodene, så en sikrer at x og y forblir gyldige.

Del 2

Anta det finnes én eller flere metoder for å endre minX, minY, maxX og maxY. Hvordan kan du hindre at koordinatene blir ugyldige etter at en av disse metodene er kalt?

Anta at x, y-koordinatene er 0, 0 og minX, minY og maxX, maxY er henholdsvis -5,-5 og 5,5, og at en ønsker å "flytte" minX, minY og maxX, maxY til henholdsvis 10,10 og 20,20. Hvordan vil du kode metoder, både de for å endre verdier og for validering, slik at dette går greit uten at objektet totalt sett blir ugyldig underveis og/eller etterpå?

 

  • No labels