In: Computer Science
Java...
Design a Payroll class with the following fields:
• name: a String containing the employee's name
• idNumber: an int representing the employee's ID number
• rate: a double containing the employee's hourly pay rate
• hours: an int representing the number of hours this employee has
worked
The class should also have the following methods:
• Constructor: takes the employee's name and ID number as
arguments
• Accessors: allow access to all of the fields of the Payroll
class
• Mutators: let the user assign values to the fields of the Payroll
class
• grossPay: returns the employee's gross pay, which is calculated
as the number of
hours worked times the hourly pay rate.
Write another program that demonstrates the class by creating a
Payroll object, then
asking the user to enter the data for an employee in the order:
name, ID number, rate, hours.
The program should then print out a statement in the following
format (for example, if
you had an employee named Chris Jacobsen with ID number 11111, who
works for 5 hours at
$10/hr):
Chris Jacobsen, employee number 11111, made $50.00 in gross
pay.
Using text forming so that the gross pay is rounded to two decimal
places.
Thanks for the question. Here is the completed code for this problem. Comments are included, go through it, learn how things work and let me know if you have any doubts or if you need anything to change. If you are satisfied with the solution, please rate the answer. Thanks =========================================================================== public class Payroll { private String name; private int idNumber; private double rate; private int hours; //• Constructor: takes the employee's name and ID number as arguments public Payroll(String name, int idNumber) { this.name = name; this.idNumber = idNumber; rate = 0.0; hours = 0; } //• Accessors: allow access to all of the fields of the Payroll class public String getName() { return name; } public int getIdNumber() { return idNumber; } public double getRate() { return rate; } public int getHours() { return hours; } //• Mutators: let the user assign values to the fields of the Payroll class public void setName(String name) { this.name = name; } public void setIdNumber(int idNumber) { this.idNumber = idNumber; } public void setRate(double rate) { this.rate = rate; } public void setHours(int hours) { this.hours = hours; } //• grossPay: returns the employee's gross pay, which is calculated as the number of //hours worked times the hourly pay rate. public double grossPay() { return getRate() * getHours(); } // when we print object this line will get executed @Override public String toString() { // return getName() + ", employee number " + getIdNumber() + ", made $" + //Using text forming so that the gross // pay is rounded to two decimal places. String.format("%.2f", grossPay()) + " in gross pay."; } }
===========================================================================
import java.util.Scanner; public class PayrollProgram { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter employee name: "); String name = scanner.nextLine(); System.out.print("Enter employee ID number: "); int id = scanner.nextInt(); System.out.print("Enter employees hourly rate: "); double rate = scanner.nextDouble(); System.out.print("Enter the number of hours employee worked: "); int hours = scanner.nextInt(); // create an object of Payroll class Payroll payroll = new Payroll(name,id); // set the values of the rate and hours using mutator methods payroll.setRate(rate); payroll.setHours(hours); // print the object, toString() method will be inbvoked. System.out.println(payroll); } }
===========================================================================
Please appreciate our effort with an upvote : )
thank you so much.