Big Java, Binder Ready Version: Early Objects
Big Java, Binder Ready Version: Early Objects
6th Edition
ISBN: 9781119056447
Author: Cay S. Horstmann
Publisher: WILEY
Question
Book Icon
Chapter 12, Problem 3PP
Program Plan Intro

Quiz

Program plan:

Filename: “Question.java”

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

  • Define a class “Question”.
    • Define the class members.
    • Define a abstract method “read()”.
    • Define a method “check()”.
      • Return the value.
    • Define a method “getText()”.
      • Return the “text”.
    • Define a method “getAnswer()”.
      • Return the “answer”
    • Define a method “setText()”.
      • Set the value of “text”.
    • Define a method “setAnswer()”.
      • Set the value of “answer”.

Filename: “NumberQuestion.java”

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

  • Import the required packages.
  • Define a class “NumberQuestion” as extending from “Question”.
    • Define the class member “EPSILON”.
    • Define the method “read()”.
      • Get the value of “text”.
      • Get the value of “answer”.
      • Call the method “setText()” to set the value of “text”.
      • Call the method “setAnswer()” to set the value of “answer”.
    • Define the method “check()”.
      • Define a “try” block.
        • Set the answer to “a”.
        • Set the response to “r”.
        • Check whether “Math.abs(a-r)” is less than “EPSILON” and return the Boolean result.
          • Define the “catch” block to catch the exception.
            • Return Boolean value “false”.

Filename: “TextQuestion.java”

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

  • Import the required packages.
  • Define a class “TextQuestion” as extending from “Question”.
    • Define the method “read()”.
      • Get the value of “text”.
      • Get the value of “answer”.
      • Call the method “setText()” to set the value of “text”.
      • Call the method “setAnswer()” to set the value of “answer”.

Filename: “QuestionTester.java”

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

  • Import the required packages.
  • Define a class “QuestionTester”.
    • Define the method “main()”.
      • Define the “try”.
        • Iterate a “while” loop,
          • If the “type” is equal to “T”,
            • Define the object of “Question”.
            • Using the object read the file for input.
            • Call the method “getText()” and print the value.
            • Print the expected question.
            • Call the method “getAnswer()” and print the value.
            • Print the expected answer.
            • Call the method “check()”.
            • Print the expected value.
          • Else if the “type” is equal to “N”.
            • Define the object of “Question”.
            • Using the object read the file for input.
            • Call the method “getText()” and print the value.
            • Print the expected question.
            • Call the method “getAnswer()” and print the value.
            • Print the expected answer.
            • Call the method “check()”.
            • Print the expected value.
          • Else,
            • Print the statement.
      • Define “catch” block.
        • Print the message to user.

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