Starting Out with Java: From Control Structures through Data Structures (3rd Edition)
3rd Edition
ISBN: 9780134038179
Author: Tony Gaddis, Godfrey Muganda
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Concept explainers
Question
Chapter 11, Problem 10PC
Program Plan Intro
- Define a class named “Employee”.
- Declare the required variables.
- Define a parameterize constructor to set “name” and “num”.
- Define a “setName()” method to set “name”.
- Define a “setEmpNum()” method to set “num”.
- Define a “setHrDate()” method to assign hire date
- Define a “getName()” method to return name.
- Define a “getEmpNum()” method to return employee number.
- Define a “getHrDate()” method to return hire date.
- Define a “isValidEmpNum()” method to return status.
- Define a “toString()” method to return string.
- Define a class named “InvalidEmpNum” that extends “Exception” class.
- Define a constructor with no parameters.
- Call “super()” method to print invalid number message.
- Define a class named “InvalidPayRate” that extends “Exception” class.
- Define a constructor with no parameters.
- Call “super()” method to print negative pay rate message.
- Define a class named “InvalidShift” that extends “Exception” class.
- Define a constructor with no parameters.
- Call “super()” method to print invalid shift number message.
- Define a class named “ProductionWorker” that extends “Exception” class.
- Define constant value for day and night shift.
- Declare required variables.
- Definition of parameterized constructor to set variables.
- Definition of constructor to initialize variables.
- Definition of “setShift()” method to set shift.
- Definition of “setPayRate()” method to set pay rate .
- Definition of “getShift()” method to return shift.
- Definition of “getPayRate()” method to return pay rate .
- Definition of “toString()” method to return string.
- Define a class named “WorkerDemo”.
- Define a “main()” method to check payroll exception.
- Create an object or reference variable.
- Test the exception.
- Declare the required variables.
- Define a parameterize constructor to set “name” and “num”.
- Define a “setName()” method to set “name”.
- Define a “setEmpNum()” method to set “num”.
- Define a “setHrDate()” method to assign hire date
- Define a “getName()” method to return name.
- Define a “getEmpNum()” method to return employee number.
- Define a “getHrDate()” method to return hire date.
- Define a “isValidEmpNum()” method to return status.
- Define a “toString()” method to return string.
- Define a constructor with no parameters.
- Call “super()” method to print invalid number message.
- Define a constructor with no parameters.
- Call “super()” method to print negative pay rate message.
- Define a constructor with no parameters.
- Call “super()” method to print invalid shift number message.
- Define constant value for day and night shift.
- Declare required variables.
- Definition of parameterized constructor to set variables.
- Definition of constructor to initialize variables.
- Definition of “setShift()” method to set shift.
- Definition of “setPayRate()” method to set pay rate .
- Definition of “getShift()” method to return shift.
- Definition of “getPayRate()” method to return pay rate .
- Definition of “toString()” method to return string.
- Define a “main()” method to check payroll exception.
- Create an object or reference variable.
- Test the exception.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
C++ Visual Studio 2019
Complete #13. Dependent #1 Employee and ProductionWorker classes showing below. Modify the Employee and ProductionWorker classes so they throw exceptions when the following errors occur:
The Employee class should throw an exception named InvalidEmployeeNumber when it receives an employee number that is less than 0 or greater than 9999.
The ProductionWorker class should throw an exception named InvalidShift when it receives an invalid shift.
The ProductionWorker class should throw an exception named InvalidPayRate when it receives a negative number for the hourly pay rate.
Write a driver program that demonstrates how each of these exception conditions works.
#1 Employee and ProductionWorker classes
#include <string>#include <iostream>#include <iomanip>using namespace std;
class Employee{private: string name; // Employee name string number; // Employee number string hireDate; // Hire date
public: // Default…
Pls help ASAP
Develop an exception class named InvalidMonthException that extends the Exception class. Instances of the class will be thrown based on the following conditions:
The value for a month number is not between 1 and 12
The value for a month name is not January, February, March, … December
Develop a class named Month. The class should define an integer field named monthNumber that holds the number of a month. For example, January would be 1, February would be 2, and so forth. In addition, provide the following methods:
A no-argument constructor that sets the monthNumberto 1.
An overloaded constructor that accepts the number of the month as an argument. The constructor should set the monthNumberfield to the parameter value if the parameter contains the value 1 – 12. Otherwise, throw an InvalidMonthException exception back to the caller. The exception should note that the month number was incorrect.
An overloaded constructor that accepts a string containing the name of the month,…
Chapter 11 Solutions
Starting Out with Java: From Control Structures through Data Structures (3rd Edition)
Ch. 11.1 - Prob. 11.1CPCh. 11.1 - Prob. 11.2CPCh. 11.1 - Prob. 11.3CPCh. 11.1 - Prob. 11.4CPCh. 11.1 - Prob. 11.5CPCh. 11.1 - Prob. 11.6CPCh. 11.1 - Prob. 11.7CPCh. 11.1 - Prob. 11.8CPCh. 11.1 - Prob. 11.9CPCh. 11.1 - When does the code in a finally block execute?
Ch. 11.1 - What is the call stack? What is a stack trace?Ch. 11.1 - Prob. 11.12CPCh. 11.1 - Prob. 11.13CPCh. 11.1 - Prob. 11.14CPCh. 11.2 - What does the throw statement do?Ch. 11.2 - Prob. 11.16CPCh. 11.2 - Prob. 11.17CPCh. 11.2 - Prob. 11.18CPCh. 11.2 - Prob. 11.19CPCh. 11.3 - What is the difference between a text file and a...Ch. 11.3 - What classes do you use to write output to a...Ch. 11.3 - Prob. 11.22CPCh. 11.3 - What class do you use to work with random access...Ch. 11.3 - What are the two modes that a random access file...Ch. 11.3 - Prob. 11.25CPCh. 11 - Prob. 1MCCh. 11 - Prob. 2MCCh. 11 - Prob. 3MCCh. 11 - Prob. 4MCCh. 11 - FileNotFoundException inherits from __________. a....Ch. 11 - Prob. 6MCCh. 11 - Prob. 7MCCh. 11 - Prob. 8MCCh. 11 - Prob. 9MCCh. 11 - Prob. 10MCCh. 11 - Prob. 11MCCh. 11 - Prob. 12MCCh. 11 - Prob. 13MCCh. 11 - Prob. 14MCCh. 11 - Prob. 15MCCh. 11 - This is the process of converting an object to a...Ch. 11 - Prob. 17TFCh. 11 - Prob. 18TFCh. 11 - Prob. 19TFCh. 11 - True or False: You cannot have more than one catch...Ch. 11 - Prob. 21TFCh. 11 - Prob. 22TFCh. 11 - Prob. 23TFCh. 11 - Prob. 24TFCh. 11 - Find the error in each of the following code...Ch. 11 - // Assume inputFile references a Scanner object,...Ch. 11 - Prob. 3FTECh. 11 - Prob. 1AWCh. 11 - Prob. 2AWCh. 11 - Prob. 3AWCh. 11 - Prob. 4AWCh. 11 - Prob. 5AWCh. 11 - Prob. 6AWCh. 11 - The method getValueFromFile is public and returns...Ch. 11 - Prob. 8AWCh. 11 - Write a statement that creates an object that can...Ch. 11 - Write a statement that opens the file...Ch. 11 - Assume that the reference variable r refers to a...Ch. 11 - Prob. 1SACh. 11 - Prob. 2SACh. 11 - Prob. 3SACh. 11 - Prob. 4SACh. 11 - Prob. 5SACh. 11 - Prob. 6SACh. 11 - What types of objects can be thrown?Ch. 11 - Prob. 8SACh. 11 - Prob. 9SACh. 11 - Prob. 10SACh. 11 - What is the difference between a text file and a...Ch. 11 - What is the difference between a sequential access...Ch. 11 - What happens when you serialize an object? What...Ch. 11 - TestScores Class Write a class named TestScores....Ch. 11 - Prob. 2PCCh. 11 - Prob. 3PCCh. 11 - Prob. 4PCCh. 11 - Prob. 5PCCh. 11 - FileArray Class Design a class that has a static...Ch. 11 - File Encryption Filter File encryption is the...Ch. 11 - File Decryption Filter Write a program that...Ch. 11 - TestScores Modification for Serialization Modify...Ch. 11 - Prob. 10PC
Knowledge Booster
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.Similar questions
- C# program in Visual Studio Code. The main application class must meet the following requirements Ask the user to enter their age If the age is between 1 and 100 (inclusive) print a message stating the age the user entered exit the program If the age is less than 1 or greater than 100 generate an ArgumentOutOfRangeException print the exception information print an error message If the value is not an integer handle the FormatException print the exception information print an error message Continue asking the user to enter their age until a valid age is enteredarrow_forwardException handling and File I/O coding intellj Exercise 3. File I/O Please create a file and add the following line: 1,5,7,9,13,58,70 Exercise 4, Assuming you have a file on your laptop, and it has the following: John,23 Please create a Person object from your main method by reading the file. You have to create Person class (String name, int age) Please read the file and show the sum of all the numbers.arrow_forwardCreate an application that you may use to monitor your progress with respect to your curriculum. The application will record the subjects that you have to enroll in during every school term. The application should also record the grades for the subjects that you have enrolled in. The application will allow a view of the subjects that you have finished as wellas those that you will yet enroll in. The application should also provide your general weighted average. Use: Reference classes and exception handling Assumption: We are only considering the first and second years. You have enrolled in 10 subjects and have not enrolled in 10 subjects. List of subjects taken (along with their corresponding units): PHYSICAL ACTIVITY TOWARDS HEALTH AND FITNESS 2 ART APPRECIATION 3 READINGS IN PHILIPPINE HISTORY 3 UNDERSTANDING THE SELF 3 INTRODUCTION TO COMPUTING (LEC) 2 INTRODUCTION TO COMPUTING (LAB) 1 COMPUTER PROGRAMMING 1 (LEC) 2 COMPUTER PROGRAMMING 1 (LAB) 1 DISCRETE MATHEMATICS 3 PURPOSIVE…arrow_forward
- C++ Each Fraction contains a numerator, denominator, a whole number portion, and has access to several functions you have developed, including overloaded operators. Complete these tasks: a. Create a FractionException class. The class contains a Fraction object and a string message explaining the reason for the exception. Include a constructor that requires values for the Fraction and the message. Also include a function that displays the message. b. Modify each Fraction class constructor and data entry function so that it throws a FractionException whenever a client attempts to instantiate a Fraction with a zero denominator. c. Write a main()function that asks the user to enter values for four Fractions. If the user attempts to create a Fraction with a zero denominator, catch the exception, display a message, and force the Fraction to 0 / 1. Display the four Fraction objects. Save the file as FractionException1.cpp.arrow_forwardIn C#,arrow_forwardC++ programming D.S.Malik 14-5 Write a program that prompts the user to enter a person’s date of birth in numeric form such as 8-27-1980. The program then outputs the date of birth in the form: August 27, 1980. Your program must contain at least two exception classes: invalidDay and invalidMonth. If the user enters an invalid value for day, then the program should throw and catch an invalidDay object. Follow similar conventions for the invalid values of month and year. (Note that your program must handle a leap year.)arrow_forward
- Create a flowchart and modify the code. INSTRUCTION: Create a new class called CalculatorWithMod. This class should be a sub class of the base class Calculator. This class should also have an additional method for calculating the modulo. The modulo method should only be seen at the sub class, and not the base class! Include exception handling for instances when dividing by 0 or calculating the modulo with 0. You would need to use throw, try, and catch. The modulo (or "modulus" or "mod") is the remainder after dividing one number by another.Example: 20 mod 3 equals 2Because 20/3 = 6 with a remainder of 2 CODE TO COPY: #include <iostream> using namespace std; class Calculator{public:Calculator(){printf("Welcome to my Calculator\n"); } int addition(int a, int b);int subtraction(int a, int b);int multiplication(int a, int b);float division(int a, int b);}; int Calculator::addition(int a, int b){return (a+b);} int Calculator::subtraction(int a, int b){return (a-b);} int…arrow_forwardmplement the loan calculator discussed in class. The application should be able to handle Exceptions and be very similar to the image below.arrow_forwardJava question Write a Thermostat class such that a user of the Thermostat class can create an objectof Thermostat and set it to the desired temperature within a pre-specified range. If theuser tries set the temperature outside this range it should throw a TemperatureTooHighor TemperatureTooLow exception. Use inheritance to create an exception superclassTemperatureOutofRange and subclasses TemperatureTooHigh andTemperatureTooLow.Sample Tester code:Thermostat t = new Thermostat(0, 100);t. setTemp(50); // Should be OK.t.setTemp(150); // Should throw TemperatureTooHigh exception.t.setTemp(-50); // Should throw TemperatureToolLow exception.Write a Tester class to demonstrate throwing and catching of exceptions. Show that thecatch specifying the superclass catches the subclass exceptions. The order of exceptionhandlers is important. If you try to catch a superclass exception type before a subclasstype, the compiler would generate errors. Also show the re-throwing of exceptions.arrow_forward
- C++HurdleGame The HurdleGame class contains all the functions invoked as a result of a user action (i.e. when a user presses a key on the Hurdle Frontend, one of the functions in HurdleGame will be called. A HurdleGame object comprises a HurdleWords object (which stores all valid guesses and valid Hurdles), and a HurdleState object, which stores and tracks all the game states. Any action should update the HurdleState object.Each function in HurdleGame is called as a result of a user action on the Hurdle Frontend. To understand this, please read the Hurdle Backend API section below before implementing. You are responsible for implementing each of the functions below. LetterEntered ● Called by the Hurdle frontend when the user enters a letter. ● Hint: when a user enters a letter, how should the underlying HurdleState be modified to reflect the change resulting from that key press? WordSubmitted ● Called by the Hurdle front end when the user submits a guess by pressing enter. ● Hint: when…arrow_forwardJava Problem:Create a Class named Bishop. Make sure the class cannot be inherited. If there have already been 5 objects initiated for this class, trying to initiate the 6th object, the constructor will throw a user-defined exception BishopCreationLimitExceeded. This class has an instance method named printObjectNumber which will print the object creation sequence number for the object for which you are calling the method as follows: This Bishop Object number is 3. Here, 3 is the object creation sequence number that is the third call to new Bishop() in your code that initiated the object. The BishopCreationLimitExceeded class sets the exception message (using super call in the constructor) as follows: The maximum number of bishop objects can be 5. You can define instance variables in the Bishop class if you need them.arrow_forwardC++ part1: Define a class named “Variable” that manages a variable name (string) and a description (string). It should not provide the default constructor. And the “VariableString” class that must inherit from the "Variable" class. This class manages a variable name (string), description (string), and value (string). Define a new exception class “VarNameException” that must inherit from the C++ runtime_error class. This class will capture the error case (generate an exception and capture reason and error value) for a variable name when it does not start with a letter (lower case or upper case) or contains at least one blank (for instance: "9name", "*name" or "first name"). Update the class named “Variable” to generate a "VarNameException" whenever the caller tries to create the Variable object with a bad name. part2: Write a function “createVariableObject” that will read the variable name, description, and a value (string) from the user and create a dynamic Variable or VariableString…arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage LearningMicrosoft Visual C#Computer ScienceISBN:9781337102100Author:Joyce, Farrell.Publisher:Cengage Learning,Programming Logic & Design ComprehensiveComputer ScienceISBN:9781337669405Author:FARRELLPublisher:Cengage
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENTC++ for Engineers and ScientistsComputer ScienceISBN:9781133187844Author:Bronson, Gary J.Publisher:Course Technology PtrEBK JAVA PROGRAMMINGComputer ScienceISBN:9781305480537Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781305480537
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT