Versions Compared

Key

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

...

For å holde styr på tiden som går vil StopWatch-klassen bli kalt utenfra (altså noe du slipper å implementere i denne oppgaven) på en tick(int)-metode. I dataverdenen er et tick (tikk på norsk) minste målbare diskret tidsenhet. I denne oppgaven er 1 tick tikk = 1 millisekund. F.eks. vil et kall tick(3) fortelle en StopWatch-instans at 3 ticks har tikk har gått siden sist gang tick() ble kalt.

...

  • Klokken startes når man ønsker å starte tidtakningen.
  • Alle ticks etter tikk etter at klokken har blitt startet skal medregnes i tidtakningen.
  • Klokken stoppes når man ønsker å stoppe tidtakningen. Da er tidtakningen helt ferdig. Det er ikke en pause i tidtakningen - klokken skal ikke startes igjen.
  • Det skal være mulig å ta rundetider.
  • Første rundetid startes når klokken starter.
  • Under tidtakningen kan man starte en ny rundetid.
  • Siste rundetid avsluttes når klokken stoppes.

...

  • boolean isStarted() - returner true om klokken har blitt startet eller false om den ikke har blitt startet
  • boolean isStopped() - returner true om klokken har blitt stoppet eller false om den ikke har blitt stoppet. NB! Her snakker vi om at klokken har blitt stoppet, ikke om klokken går eller ikke.
  • int getTicks() - returnerer det totale antall ticks tikk (millisekunder) som har gått i levetiden til klokken uavhengig om klokken har vært startet eller stoppet.
  • int getTime() - returnerer antall ticks som tikk som har gått under tidtakningen. Hvis tidtakningen ikke har startet returner -1.
  • int getLapTime() - returnerer antall ticks som tikk som har gått under nåværende rundetid. Hvis tidtakningen ikke har startet returner -1.
  • int getLastLapTime() - returnerer lengden på forrige ferdigmålte rundetid. Hvis det ikke er noen tidligere rundetider returner -1.

...

  • void tick(int ticks) - forteller klokken at ticks tick  antall tikk har gått.
  • void start() - starter klokken
  • void lap() - starter en ny rundetid
  • void stop() - stopper klokken

...