Question: Design a class named Employee. The class should keep the following information in fields: a. Employee name. b. Employee number in the format XXX-L, where
Design a class named Employee. The class should keep the following information in fields:
a. Employee name. b. Employee number in the format XXX-L, where each X is a digit within the range 0-9 and the L is a letter within the range AM. c. Hire date.
Write one or more constructors and the appropriate accessor and mutator methods for the class.
Next, write a class named ProductionWorker that extends the Employee class. The ProductionWorker class should have fields to hold the following information:
a. Shift (an integer). b. Hourly pay rate (a double).
The workday is divided into two shifts: day and night. The shift field will be an integer value representing the shift that the employee works. The day shift is shift 1 and the night shift is shift 2. Write one or more constructors and the appropriate accessor and mutator methods for the class.
In a particular factory, a shift supervisor is a salaried employee who supervises a shift. In addition to a salary, the shift supervisor earns a yearly bonus when his or her shift meets production goals. Design a ShiftSupervisor class that extends the Employee class. The ShiftSupervisor class should have a field that holds the annual salary and a field that holds the annual production bonus that a shift supervisor has earned. Write one or more constructors and the appropriate accessor and mutator methods for the class. Demonstrate the classes by writing a program that uses ProductionWorker and ShiftSupervisor objects.
Please implement the above specification using the Java programming language.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
