Big Java Late Objects
Big Java Late Objects
2nd Edition
ISBN: 9781119330455
Author: Horstmann
Publisher: WILEY
Question
Book Icon
Chapter 12, Problem 2PP
Program Plan Intro

Appointment Calendar

Program plan:

Filename: “AppoinmentTime.java”

This program file is used to define a class “AppoinmentTime”. In the code,

  • Import the required packages.
  • Define a class “AppoinmentTime”.
    • Define the class members “minutes”, “hours” and “BAD_TIME”.
    • Define a constructor “AppoinmentTime()”.
      • Define the object of “Scanner” class.
      • Get the delimiter.
      • Define the “try” block.
        • Get the values of “hours” and “minutes”.
        • If the “hours” is less than 0 or greater than 23,
          • Throw a runtime exception.
        • If the “minutes” is less than 0 or greater than 59,
          • Throw a runtime exception.
      • Define a “catch” exception.
        • Set “hours” equal to “-1”.
        • Set “minutes” equal to “-1”.
    • Define the method “equals()”.
      • If the condition is true,
        • Return false.
      • Define “b” of class “AppoinmentTime”.
      • Return the result of expression.
    • Define the method “toString()”.
      • Return the time in string format.

Filename: “AppointmentDate.java”

This program file is used to define a class “AppoinmentDate”. In the code,

  • Import the required packages.
  • Define a class “AppoinmentDate”.
    • Define the class members “year”, “month”, “day”, “DAYS” and “BAD_DATE”.
    • Define a constructor “AppoinmentDate ()”.
      • Define the object of “Scanner” class.
      • Get the delimiter.
      • Define the “try” block.
        • Get the values of “year”, “month” and “day”.
        • If the “month” is less than 1 or greater than 12,
          • Throw a runtime exception.
        • If “day” is less than 1,
          • Throw a runtime exception.
        • If the condition “day>DAYS[month-1]”,
          • Throw a runtime exception.
        • If the “month” greater than 2 and “year” is not a leap year and the “days” are greater than 28,
          • Throw a runtime exception.
      • Define a “catch” exception.
        • Set “year” equal to “-1”.
        • Set “month” equal to “-1”.
        • Set “day” equal to “-1”.
    • Define the method “equals()”.
      • If the condition is true,
        • Return false.
      • Define “b” of class “AppoinmentDate”.
      • Return the Boolean result of expression.
    • Define the method “toString()”.
      • Return the date in string format.
    • Define the method “isLeapYear()”.
      • Check the condition and return the result.

Filename: “AppointmentDateTimeTester.java”

This program file is used to define a class “AppointmentDateTimeTester”. In the code,

  • Define a class “AppointmentDateTimeTester”.
    • Define a method “main()”.
      • Print the statement.
      • Define the object of “AppoinmentDate”.
      • Check the good date “2016/3/15”.
      • Print the expected value.
      • Check another date “Jan 15, 2016”.
      • Check the bad format.
      • Print the expected bad date.
      • Print the invalid format.
      • Print the expected result.
      • Check the equality.
      • Print the expected result.
      • Check with new date “2016/02/30”.
      • Check the invalid date.
      • Print the expected result.
      • Assign “d” equal to “2016/02/02”.
      • Assign “d2” equal to “2016/02/02”.
      • Check the equality of “d” and “d2”.
      • Print the expected value.
      • Check whether “d” equals “null”.
      • Print the expected value.
      • Check whether “d” equals “2016/02/02”.
      • Print the expected value.
      • Print a new line.
      • Print the statement.
      • Assign “t1” equal to “8:15”.
      • Check the good time.
      • Print the expected result.
      • Assign “t1” equal to “7:05”.
      • Check the good time.
      • Print the expected result.
      • Checking the invalid format.
      • Print the invalid time format.
      • Assign “t1” equal to “7:60”.
      • Check the bad time.
      • Print the expected value.
      • Assign “t1” equal to “24:05”.
      • Checking the bad time.
      • Print the expected value.
      • Assign “t1” equal to “8:15”.
      • Check the equality.
      • Print the expected result.
      • Check whether “t1” is equal to “null”.
      • Print the expected value.
      • Check the equality.
      • Print the expected value.

Blurred answer
Knowledge Booster
Background pattern image
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