Find Jobs
Hire Freelancers

Java Program

$10-30 USD

Closed
Posted about 10 years ago

$10-30 USD

Paid on delivery
Objective: Practice creating classes and working with classes using inheritance and polymorphism. Problem: You are to write a program to manage the payroll for a company. The program will read in a file containing information about the company’s employees, and then interactively process commands to handle payroll-related tasks. Get the initial input file name from the user. The program will display a menu to the user to perform the following tasks: 1) Add an employee 2) Delete an employee 3) Print the payroll for the company 4) Print information for an employee 5) Give a raise to a particular employee 6) Quit The program will consist of several classes. Be sure to use polymorphism for the types of employees. You will have an abstract Employee class and concrete classes for SalariedEmp, HourlyEmp, and PartTimeEmp. You will need a PayrollProcessor class that will accept an ArrayList of Employees and will perform all of the payroll functionality. A TextMenu class is provided that you may use for the menu processing. When you design the program, be sure to separate the data classes from the user interface class. In other words, do not have user interaction in the data classes. Keep the following in mind when designing your classes: • SalariedEmp and HourlyEmp represent kinds of Employees • PartTimeEmps are kinds of HourlyEmps • When doing payroll, the program will need to read a file of time-card information. All employees will have time-cards. • All employees are paid on a weekly basis. • Raises are given in terms of percentages. Example: Prompt the user for the pay raise percent. The user might enter 5, meaning 5 percent or .05. 2 Employee File The file of employee information will contain employee information. Each employee’s information will begin with a line that specifies the type of employee: Salaried, Hourly, or PartTime. The rest of the information will differ based on employee type. Salaried employees will have: Salaried Last Name First Name AccruedVacation AccruedSickLeave WeeklySalary Hourly employees will have: Hourly Last Name First Name AccruedVacation AccruedSickLeave HourlyRate Part time employees will have PartTime Last Name First Name AccruedVacation AccruedSickLeave HourlyRate ScheduledWorkHours (This is the number of hours the employee is expected to work each week.) Time card file The time card file will contain information on each employee in the following form: LastName First Name HoursWorked VacationUsed SickLeaveUsed Sample files are available on the ReggieNet. 3 Payroll information When doing payroll, the following information should be printed for each employee: Name HoursPaid AmountPaid AccruedVacation AccruedSickLeave This information should be neatly formatted. Rules for Accruing Vacation and Sick Leave Salaried employees get 3 hours of vacation per week. They also get 3 hours of sick leave per week. Full-time hourly employees get 2 hours of vacation per week. They also get 2 hours of sick leave per week. Part-time employees get 1 hour of vacation per 20 hours worked. They also get 1 hour of sick leave per 20 hours scheduled (even if they worked more than was scheduled). Partial hours ARE possible. Rules for Pay Salaried employees receive their weekly salaries. Full-time hourly employees receive their hourly rate times the sum of hours worked, vacation hours used, and sick leave hours used. If the number of hours worked exceeds 40, these employees receive 1.5 times their rate of pay for those additional hours. They cannot get overtime if they were paid for vacation or sick leave. Part-time employees receive their hourly rate times the sum of hours worked, vacation hours used, and sick leave hours used. Notes • You will need to override the equals method in Employee to help you find specific employees. • Add new employees to the end of the array. • You may assume that the TimeCard file will be in the same order as the array. Requirements • Turn in a class diagram illustrating all classes. • Write JUnit test cases for all methods doing calculations • Zip your files and submit the file to ReggieNet by the deadline. • Design counts – think about the examples you have seen and how inheritance/polymorphism can be used effectively in this program.
Project ID: 5525228

About the project

5 proposals
Remote project
Active 10 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
5 freelancers are bidding on average $81 USD for this job
User Avatar
I can deliver the project to your specifications as I am an expert coder in java and like to discuss further.
$84 USD in 3 days
4.3 (3 reviews)
3.3
3.3
User Avatar
I am a professional software engineer with 9+ years of experience. I am very talented programmer with the following skills c, c++ , java , UNIX, Linux,SSH, PHP, Jsp , Js , advanced js like jquery, extjs etc. My skill set and experience are best suitable for your requirement. Please assign this task to me I will make sure your work will be completed to your full satisfaction.
$30 USD in 1 day
0.0 (1 review)
0.0
0.0
User Avatar
Can help... I am an Expert... Lets Start! Please start a Discussion with me and we can get started from there... Please check the past projects I have handled and check my reviews for what employers have to say about my work... Can start right now...
$100 USD in 1 day
0.0 (0 reviews)
2.0
2.0
User Avatar
hi, I can help you --------------------------------------------------------------------------------------------------------------
$166 USD in 3 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
United States
0.0
0
Member since Mar 7, 2014

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.