Write a class LapTimer that can be used to time the laps in a race. The class should have the following private attributes:

• running—a boolean indication of whether the timer is running
• startTime—the time when the timer started
• lapStart—the timer’s value when the current lap started
• lapTime—the elapsed time for the last lap
• totalTime—the total time from the start of the race through the last completed lap
• lapsCompleted—the number of laps completed so far
• lapsInRace—the number of laps in the race
The class should have the following methods:
• LapTimer(n)—a constructor for a race having n laps.
• start —starts the timer. Throws an exception if the race has already started.
• markLap—marks the end of the current lap and the start of a new lap. Throws an exception if the race is finished.
• getLapTime—returns the time of the last lap. Throws an exception if the first lap has not yet been completed.
• getTotalTime—returns the total time from the start of the race through the last completed lap. Throws an exception if the first lap has not yet been completed.
• getLapsRemaining—returns the number of laps yet to be completed, including the current one.

Express all times in seconds.
To get the current time in milliseconds from some baseline date, invoke
Calendar.getInstance().getTimeInMillis() This invocation returns a primitive value of type long. By taking the difference between the returned values of two invocations at two different times, you will know the elapsed time in milliseconds between the invocations. Note that the class Calendar is in the package java.util.


See the code in TimerException.java, LapTimer.java.

Computer Science & Information Technology

You might also like to view...

What is the value ofNumber, given the following:A = 2.3, B = 3.8

```Set Number = Floor(Ceiling(A) * B)``` a. 6 b. 8.74 c. 8 d. 6.1

Computer Science & Information Technology

_________ moves a copy of a process to another machine without destroying the original process.

a) Process migration b) Process cloning c) Process distribution d) none of the above

Computer Science & Information Technology

The process of solving a problem by reducing it to smaller versions of itself is called recursion.

Answer the following statement true (T) or false (F)

Computer Science & Information Technology

Many states have online __________ registries

a. Sex offender b. Voter c. Hospital d. None of the above

Computer Science & Information Technology