The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Apr 2017 |
| Last Sign in: | 103 Weeks Ago, 4 Days Ago |
| Questions Answered: | 4870 |
| Tutorials Posted: | 4863 |
MBA IT, Mater in Science and Technology
Devry
Jul-1996 - Jul-2000
Professor
Devry University
Mar-2010 - Oct-2016
Design a class named Clock. The class contains private data fields for startTime and stopTime, a no argument constructor that initializes the startTime to the current time, a method named start() that resets the startTime to the given time, a stop() method that sets the endTime to the given time and a getElapsedTime() method that returns the elapsed time in seconds. Construct a Clock instance and return the elapsed time. Command line arguments should be used to send the start and end times. You should use the java.time classes.
Here is sample run: java TestClock 11:45:12 11:48:13 Elapsed time in seconds is: 181
My professor looked at my following code and said :Â ask the user to press a key that will place the computer time into the start variable and then ask the user to wait some time and then have him press a key and at that point the same method will get the new current time in the computer and assign it to the end variable. With the two different times of start and end, you should be able to use your getElapsedTime () method to work."
He wants some interactive code where the user is prompted as asked in his feedback.  WARNING:  my professor is picky and wants things done as asked.  I am just under a time crunch here and do not understand how to use LocalTime.now(); through prompting the user to do what he is asking.  I could figure it out if I had hours but I don't.
The code so far:
import java.time.LocalTime;// Makes the LocalTime class visible
import java.time.Duration;// Makes the Duration class visible
/**
*
* @author
*/
public class Homework4 {//program name
 Â
public class Clock {
private LocalTime startTime;//start time
private LocalTime stopTime;//stop time
 Â
public Clock() {
// gets the current time from the system clock in the default time-zone
startTime = LocalTime.now();
}//end Clock
public void start(String start) {//sets start time
String[] time = start.split(":");// split Hours, minutes, seconds
startTime = LocalTime.of(Integer.parseInt(time[0]),Integer.parseInt(time[1]) ,Integer.parseInt(time[2]));//set the start time
}//end start method
 Â
public void stop(String stop) {//sets stop time
String[] time = stop.split(":");// split Hours, minutes, seconds
stopTime = LocalTime.of(Integer.parseInt(time[0]),Integer.parseInt(time[1]) ,Integer.parseInt(time[2]));//set the stop time
}//end stop method
public long getElapsedTime() {//getElapsedTime method
long expired = Duration.between(startTime,stopTime).getSeconds();//find the duration between the given two times
System.out.println( startTime + " " + stopTime);//print start and stop times
return expired;//returns expired time
}//end getElapsedTime
}//end class Clock
/**
* @param args the command line arguments
*/
public static void main(String[] args) {//begin main program
String startTime = "11:45:12";//start time
String endTime = "11:48:13";//stop time
 Â
Clock clock = new Clock();// create Clock instance
clock.start(startTime);//call start method
clock.stop(endTime);//call end method
long elapseTime = clock.getElapsedTime();
System.out.println("Elapsed time in seconds is " + elapseTime);//print elapsed time
}//end main
 Â
}//end Homework4 class
-----------