Java: An Introduction to Problem Solving and Programming (7th Edition)
Java: An Introduction to Problem Solving and Programming (7th Edition)
7th Edition
ISBN: 9780133766264
Author: Walter Savitch
Publisher: PEARSON
bartleby

Videos

Question
Book Icon
Chapter 9, Problem 9PP
Program Plan Intro

Lap Timer using Applet

Program Plan:

Filename: “LapTimerApplication.java”

  • Import the required packages.
  • Declare the class “LapTimerApplication”.
    • Declare the required variables.
    • Define the constructor.
      • Set the window size
      • Close the window.
      • Create an object for “Container” class.
      • Initially set the background color as white.
      • Set the layout.
      • Create the buttons.
      • Add the action to these buttons.
      • Add the buttons on the window screen.
      • Create the object for the labels.
      • Add the label on the window screen.
      • Create an object for the “LapTimer” class.
    • Declare the “actionPerformed” method.
      • Declare the required variables with the values.
      • If the action command is start, then execute the “if” condition.
        • Inside the “try” block, call the method “start ()” and set the labels.
        • In catch block, set the error message.
          • If the action command is lap, then execute the “if” condition.
            • Inside the “try” block, call the method “markLap ()” and set the labels.
            • In catch block, set the error message.
    • Declare the “main ()” method.
      • Create an object for “LapTimer” class.
      • Show the window.

Filename: “LapTimer.java”

  • Import required package
  • Define the class “LapTimer”.
    • Declare required private variables “running”, “startTime”, “lapStart”, “lapTime”, “totalTime”, “lapsCompleted”, “lapsInRace”.
    • Define the constructor.
      • Assign the values.
    • Define the method “start ()”.
      • Check the condition “running == true || lapsCompleted > 0”.
        • Throw “TimerException” exception with a message.
          • Assign “true” to the variable “running”.
          • Calculate the value of “startTime”.
          • Assign the value of “startTime” to “lapStart”.
    • Define the method “markLap ()”.
      • Check if value of “running” is “false”.
        • Check if laps completed are equal to 0.
          • Throw “”TimerException exception with a message.
            • Increment the value of “lapsCompleted”.
            • Get the current time and store it in a variable “currentTime”.
            • Calculate “lapTime” by subtracting “lapStart” from “currentTime”.
            • Calculate “totalTime” by subtracting “startTime” from “currentTime”.
            • Assign the value of “currentTime” to “lapStart”.
            • Check if the value of “lapsCompleted” and “lapsInRace” are equal.
              • Assign “false” to “running”.
    • Define the method “getLapTime ()”.
      • Check if “lapsCompleted” is 0.
        • Throw “”TimerException exception with a message.
            • Return “lapTime”.
    • Define the method “getTotalTime ()”.
      • Check if “lapsCompleted” is 0.
        • Throw “”TimerException exception with a message.
            • Return “totalTime”.
    • Define the method “getLapsRemaining ()”.
      • Return the value.
    • Define the “main ()” function.
      • Declare a variable and assign it with a value.
      • Create an object for the class “LapTimer”.
      • Call the function “start ()”.
      • Call the function “markLap ()”.
      • Print the number of laps.
      • Print the lap time by calling the function “getLapTime ()”.
      • Print the total time by calling the function “getTotalTime ()”.
      • Print the remaining number of laps by calling the function “getLapsRemaining ()”.

Filename: “TimerException.java”

  • Define an exception class named “TimerException”.
    • Define a parameterized constructor for the class.
      • Call the parent class’s method by passing a message.

Blurred answer

Chapter 9 Solutions

Java: An Introduction to Problem Solving and Programming (7th Edition)

Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
6 Stages of UI Design; Author: DesignerUp;https://www.youtube.com/watch?v=_6Tl2_eM0DE;License: Standard Youtube License