Calculate the price
of
your order:

275 words
+
Approximate price
$ 0.00

 Overview In this assignment you will be implementing 7 total classes that will simulate a payroll of employees of a startup company. The superclass Employee is provided in examples/program5, and the first six classes below will subclass from Employee. All instance variables are private and thus require necessary getter and setter methods. All instance methods are public. BoardMember extends Employee BoardMember(int yearsWorked); // constructor final double YEARLY_BONUS = 20000; // $/year final int PAID_VACATION = 20; // days final int UNPAID_VACATION = 10; // days final int SICK_LEAVE = 10; // days final double HEALTH_INSURANCE = 20000;//$/year final double INCOME = 200000; // $/year int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. int usedVacation; // keeps track of how much paid vacation  // has been used. int usedSickDays; // keeps track of how many sick days  // have been used. void usePaidVacation(); // adds one to usedVacation  //instance variable. void useUnpaidVacation(); // adds one to // usedUnpaidVacation void useSickDay(); // adds one to usedSickDays void workYear(); // adds one to yearsWorked. double YTDValue(); /* overridden from Employee class. YTDValue() is calculated by taking the sum of: YEARLY_BONUS HEALTH_INSURANCE INCOME PAID_VACATION * (INCOME / 260) (SICK_LEAVE – usedSickDays) * ((INCOME / 260) / 2) */ int yearsTillRetirement(); /* overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This number should not be below zero. This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260) + ((usedVacation / 260) * 2) + (usedSickDays / 260)) */ Engineer extends Employee Engineer(int yearsWorked); // constructor final double YEARLY_BONUS = 5000; // $/year final int PAID_VACATION = 10; // days) final int UNPAID_VACATION = 10; days final double HEALTH_INSURANCE = 10000; // $/year final double INCOME = 100000; // $/year int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. int usedVacation; // keeps track of how much paid vacation  // has been used. void usePaidVacation(); // adds one to usedVacation  // instance variable. void useUnpaidVacation(); // adds one to // usedUnpaidVacation void workYear(); // Adds one to yearsWorked. double YTDValue(); /* overridden from Employee class. This is calculated by taking the sum of: YEARLY_BONUS HEALTH_INSURANCE INCOME PAID_VACATION * (INCOME / 260) */ int yearsTillRetirement(); /* Overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This number should not be below zero. This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260) + ((usedVacation / 260) * 2)) */ Accountant extends Employee Accountant(int yearsWorked); // constructor final int PAID_VACATION = 10; // days final int UNPAID_VACATION = 10; // days final double HEALTH_INSURANCE = 15000; // $/year final double INCOME = 125000; // $/year int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. int usedVacation; // keeps track of how much paid vacation  // has been used. void usePaidVacation(); // adds one to usedVacation  // instance variable. void useUnpaidVacation(); // adds one to // usedUnpaidVacation. void workYear(); // Adds one to yearsWorked. double YTDValue(); /* overridden from Employee class. This is calculated by taking the sum of: HEALTH_INSURANCE INCOME PAID_VACATION * (INCOME / 260) */ int yearsTillRetirement(); /* Overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This number should not be below zero. This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260) + ((usedVacation / 260) * 2)) */ Custodian extends Employee Custodian(int yearsWorked); // constructor final int PAID_VACATION = 10; // days final int UNPAID_VACATION = 10; // days final double HEALTH_INSURANCE = 10000; // $/year final double INCOME = 50000; // $/year int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. int usedVacation; // keeps track of how much paid vacation  // has been used. void usePaidVacation(); // adds one to usedVacation void useUnpaidVacation(); // adds one to // usedUnpaidVacation void workYear(); // adds one to yearsWorked. double YTDValue(); /* overridden from Employee class. This is calculated by taking the sum of: HEALTH_INSURANCE INCOME PAID_VACATION * (INCOME / 260) */ int yearsTillRetirement(); /* : must be overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This number should not be below zero. This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260) + ((usedVacation / 260) * 2)) */ Marketer extends Employee Marketer(int yearsWorked); // constructor final double CLIENT_BONUS = 2000; // per new client final int PAID_VACATION = 10; // days final int UNPAID_VACATION = 10; // days final double HEALTH_INSURANCE = 10000; // $/year final double INCOME = 100000; // $/year int numBonuses; // keeps track of how many commission // based bonuses the employee received. int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. int usedVacation; // keeps track of how much paid vacation  // has been used. void signDeal(); // adds one to numBonuses. void usePaidVacation(); // adds one to usedVacation void useUnpaidVacation(); // adds one to // usedUnpaidVacation void workYear(); // Adds one to yearsWorked. double YTDValue(); /* Overridden from Employee class. This is calculated by taking the sum of: CLIENT_BONUS * numBonuses HEALTH_INSURANCE INCOME PAID_VACATION * (INCOME / 260) */ int yearsTillRetirement(); // Overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This number should not be below zero. This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260) + ((usedVacation / 260) * 2)) */ Intern extends Employee Intern(int yearsWorked); // constructor final int UNPAID_VACATION = 10; // days final double HEALTH_INSURANCE = 5000; // $/year final double INCOME = 40000; // $/year int usedUnpaidVacation; // keeps track of how much  //unpaid vacation has been used. void useUnpaidVacation(); // adds one to // usedUnpaidVacation void workYear(); // Adds one to yearsWorked. double YTDValue(); /* Overridden from Employee class. This is calculated by taking the sum of: HEALTH_INSURANCE INCOME */ int yearsTillRetirement(); /* Overridden from Employee class. This should be rounded up to the nearest int. The calculation should take place as floating point arithmetic to ensure precision (hint: cast as double where necessary). This is calculated by: 35 – (yearsWorked + (usedUnpaidVacation / 260)) */ Payroll – This class will not explicitly subclass from anything. It will have the following instance variables and methods: Payroll(int x); // Constructor Employee[] employees; // array of x Employee objects.  // See constructor. void sortEmployeesByRetirement(); /* sort employees in descending order of when the employee will retire. Employees retiring the soonest will go at the beginning of the array. */ void sortEmployeesByCost(); /* sort employees in descending order of the YTDValue() of each employee. Employees having the highest YTDValue() will go at the beginning of the array. */ 

Basic features

  • Free title page and bibliography
  • Unlimited revisions
  • Plagiarism-free guarantee
  • Money-back guarantee
  • 24/7 support

On-demand options

  • Writer's samples
  • Part-by-part delivery
  • Overnight delivery
  • Copies of used sources
  • Expert Proofreading

Paper format

  • 275 words per page
  • 12pt Arial/Times New Roman
  • Double line spacing
  • Any citation style (APA, MLA, CHicago/Turabian, Havard)

Guaranteed originality

We guarantee 0% plagiarism! Our orders are custom made from scratch. Our team is dedicated to providing you academic papers with zero traces of plagiarism.

Affordable prices

We know how hard it is to pay the bills while being in college, which is why our rates are extremely affordable and within your budget. You will not find any other company that provides the same quality of work for such affordable prices.

Best experts

Our writer are the crème de la crème of the essay writing industry. They are highly qualified in their field of expertise and have extensive experience when it comes to research papers, term essays or any other academic assignment that you may be given!

Calculate the price of your order

You will get a personal manager and a discount.
We'll send you the first draft for approval by at
Total price:
$0.00

Expert paper writers are just a few clicks away

Place an order in 3 easy steps. Takes less than 5 mins.