Versions Compared

Key

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

...

En måte å illustrere oppførselen på er et diagram over hvordan tilstanden til objektet utvikler seg over tid, når ulike metoder blir kalt.

PlantUML Macro
object "\#1:Counter" as counter1 {
	counter = 1
	end = 3
}

counter1 ..> counter1 : getCounter() => 1
 
object "#1:Counter" as counter2 {
	counter = 2
	end = 3
}
counter1 ..> counter2 : count()
counter2 ..> counter2 : getCounter() => 2
 
object "#1:Counter" as counter3 {
	counter = 3
	end = 3
}
counter2 ..> counter3 : count()
counter3 ..> counter3 : getCounter() => 3
counter3 ..> counter3 : count()

Figuren viser hvordan samme Counter-objekt går fra én tilstand (verdiene til counter og end) til en annen, når getCounter- og count-operasjonene utføres. Hver boks er altså det samme objektet i ulike tilstander og pilene angir hvilket kall som leder til neste (eller samme) tilstand. Kallene til getCounter endrer ikke noen verdier, så derfor leder de til samme tilstand. Kallene til count, derimot, endrer telleren (counter) inntil den når slutt-verdien (end) og gir en (heldigvis endelig) kjede med tilstander (se fotnote 1).

 

...