COMP 274 Week 2 Lab Inheritance and Polymorphism
Just Click on Below Link To Download This Course:
https://www.coursetutor.us/product/comp-274-week-2-lab-inheritance-and-polymorphism/
COMP 274 Week 2 Lab Inheritance and Polymorphism
The objective of this programming assignment is to
experience the use of inheritance in Java and to see how polymorphism works
with inheritance in Java.
The assignment involves writing three classes, plus a
test class. The base class is an employee class which contains a couple of
attributes common to all employees and a fundamental method to calculate pay.
The two derived classes are a commissioned employee that adds payment of a
sales commission as part of the pay calculation, and a union employee which
adds overtime payment and union dues as part of the pay calculation. The test
program will be structured to include a method which accepts a base class
reference and demonstrates polymorphic behavior.
The details of the three classes to be implemented are as
follows:
- An Employee contains a name, a department where the employee works,
and an hourly rate of pay. An explicit value constructor should be
provided to set all three values when an Employee object is created. There
should be mutator methods to set the values of the department and the pay
rate. There should be one accessor method which returns a string
containing the name and the department in which the employee works.
Finally, there should be a weekly pay method that takes an integer
parameter for the number of hours worked and returns the weekly pay. If
the number of hours worked is less than 40 hours, the pay is the number of
hours times the rate. If the number of hours worked is 40 or more, the pay
is 40 times the rate.
- The Union Employee inherits from the Employee class. A Union
Employee contains a dues variable which holds the amount of dues a Union
Employee has withheld from their paycheck each week. An explicit value
constructor should be provided to set all three values from the base class
along with the dues value. There should be a mutator method provided to
set the dues variable. The base class weekly pay method should be
overridden because a Union Employee gets 1.5 times the rate for any hours
over 40 per week. This method should use the base class method to
calculate pay for first 40 hours and then add the overtime amount. Also
the weekly pay is reduced by the amount of dues withheld.
- The Commission Employee inherits from the Employee class. A
Commission Employee contains a commission rate and a sales amount variable
which are used as part of the pay calculation. An explicit value
constructor should be provided to set all 3 values of the base class along
with the commission rate variable. There should be mutator methods for the
commission rate and the sales amount. The base class weekly pay method
should be overridden because the Commission Employee gets the base
employee pay plus the commission rate times the sales amount. This method
should use the base class weekly pay method to calculate the hourly part
of the pay.
- The test program needs to create a Union Employee
object and a Commission Employee object. The test program must contain a
display method which takes a base class Employee object reference along
with the number of hours worked by the employee. The display method should
use the base class method to get the employee name and department info and
output that information. The display method should also use the base class
method to get the weekly pay info for the employee object and display that
information. The test program should pass the Union Employee object and
the Commission Employee object to the display method along with the number
of hours each employee has worked. It should test the payroll calculation
for the number of hours worked to be less than 40, 40, and greater than 40
hours for each employee type. The output seen should demonstrate
polymorphic behavior, that is the base class Employee reference to a Union
Employee object elicits Union Employee pay calculations, and the base
class Employee reference to a Commission Employee elicits Commission
Employee payroll calculations.
Take screen
shots of the output of the program. Paste the screen shots and your source code
for all your classes into a Word document.


Comments
Post a Comment