...
Observatør-observert-teknikken går ut på at det observerte objektet sier fra til en eller flere observatører om at tilstanden er endret. I denne oppgaven skal vi utvide StopWatch og StopWatchManager fra en den tidligere StopWatch-oppgaveoppgaven. StopWatch skal kunne si fra til observatører av typen StopWatchListener når stoppeklokkens tilstand endres. StopWatchManager skal kunne si fra til observatører (også av typen StopWatchListener) når en av dens stoppeklokker endrer tilstand.Les mer om
Leseliste
Observatør-observert-teknikken |
|
...
|
Del 1: StopWatch
Du skal definere et lyttergrensesnitt, StopWatchListener, som skal inneholde:
...
Lyttermetoden må kalles på alle registrerte observatører når tilstanden til stoppeklokken endres, slik at alle observatører holdes oppdatert.
JExercise-testkode Testkode for denne oppgaven finner du her: patterns/observable/StopWatchTest.java. Jextest-koden finner Originalkoden (jextest) finner du her: patterns/observable/StopWatch.jextest.
Del 2: StopWatchManager
Det skal også være mulig å lytte på StopWatchManager og bli holdt oppdatert om alle stoppeklokker som et StopWatchManager-objekt holder styr på. For å oppnå dette må også StopWatchManager ha metoder for å legge til og fjerne observatører. Implementer følgende i StopWatchManager:
...
Lyttermetoden må kalles på alle registrerte observatører når tilstanden til en av stoppeklokkene endres, slik at alle observatører holdes oppdatert.
JExercise-testkode Testkode for denne oppgaven finner du her: patterns/observable/StopWatchManagerTest.java. . Jextest-koden Originalkoden (jextest) finner du her: patterns/observable/StopWatchManager.jextest.
Include Page | ||||
---|---|---|---|---|
|