Oppgaven ser på innkapsling i kontekst av Tilstand og oppførsel - Location-oppgave.
Location-klassen i Tilstand og oppførsel - Location-oppgave representerer et x, y-koordinat-par og inneholder metodene left, right, up og down for endre koordinat-paret trinnvis i de fire retningene.
Det er mulig å la alle disse kalle en femte metode, void move(int dx, int dy)-metode og la denne ta seg av endringen av selve feltene, altså slik:
int x, y; void move(int dx, int dy) { // endringer av x og y skjer her } void left() { move(-1, 0); } // ... tilsvarende for right(), up() og down() ...
Diskuter evt. fordeler og ulemper med denne realiseringsteknikken, når formålet er innkapsling.
Forklar hvordan synlighetsmodifikatorer bør brukes i eksempelkoden over, for at innkapslingen skal bli "vanntett".