Versions Compared

Key

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

Et objekt har både tilstand og oppførsel. Tilstanden til et objekt er alle dataene den inneholder, mens oppførselen er hva objektet kan gjøre av beregninger og operasjoner på dataene og hvordan dette styrer tilstanden over tid.

Ta som eksempel et Counter-objekt som teller fra en start-verdi til en slutt-verdi. Slutt-verdien angis når objektet opprettes og kan variere fra objekt til objekt. Objektet må altså huske både teller-verdien og slutt-verdien (begge er heltall).  en operasjon som returnerer teller-verdien og en operasjon . så disse utgjør objektets tilstand. Objektet har to operasjoner, int getCounter(), som returnerer nåværende teller-verdi, og void count(), som øker telleren med 1 , inntil den når slutt-verdien. Tilstanden til objektet er altså teller-verdien, mens oppførselen. Oppførselen defineres av disse to operasjonene, først og fremst ved hvordan count evt. endrer tilstanden, men også hvordan tilstanden leses av getCounter og dermed påvirkes av count.

En måte å anskueliggjøre oppførselen er ved å vise i et diagram hvordan tilstanden til objektet utvikler seg over tid, når ulike metoder blir kalt. Figuren under viser hvordan et objekt med start-verdi 1 og slutt-verdi 3 påvirkes av kall til getCounter og count.