Question
Program Description: This is an Employee Information system, intended for the use of the manager or other administrative personal to store, edit, and re-access their
Program Description: This is an Employee Information system, intended for the use of the manager or other administrative personal to store, edit, and re-access their Employees information. Simple budget and salary calculations will also be implemented. The following detailed program description contains the minimum program requirements. Students are encouraged to add more features (classes, Methods, etc...) after creating the initial classes and methods. Implementation Requirements: This program will include the fundamentals of object-oriented programing and all of the requirements for the final project, including: Arrays or ArrayLists of objects Static variables and methods Method overriding (of the toString()) Composition Inheritance Random number generation The storing, editing, and deleting of data using objects String methods Class Descriptions Class Name: EmployeeClient Class Description: Create a client class which displays the capabilities of the program. Creativity is encouraged. However, it MUST include the following: Main should contain a loop, presenting a list of options at the start of each iteration. Using an array or ArrayList, allow the user to add and delete Employees from the list. Allow the user to search through the system for specific Employees. If the Employee is found, print their corresponding information. GUI or console may be used. Class Name: BasicInfo Class Description: This class will have instance variables to store each Employees: first name last name ID the specific department they each work for phone number address email address position title Include set and get methods for each variable. Include a toString() method which returns a formatted string of an Employees data from this class. Class Name: GenerateID Class Description: This class will have instance variables for each Employees: Employee ID position number department Variable department should be of type BasicInfo (Composition). Each Employee ID should be a randomly generated 4 digit number. Each position number should be a randomly generated 4 digit number, concatenated to the back of the abbreviation for the department (for example, if the department is Math, the position number should begin with the prefix MA, if English, then ENG, etc). Include the appropriate methods for each instance variable. Include a toString() method which returns a formatted string notifying the user that a new Employees Employee ID and position number have been generated, and display this data. Class Name: HoursAndSalary Class Description: this class will allow the administrator to edit: The salary for the Employees. Note: all Employees receive the same salary. The budget The sum of the hours worked each week. Include code to verify that the salary is above minimum wage, and that the budget and sum of hours are positive number. Class Name: SalaryCalc Class Description: this class is a subclass of HoursAndSalary (Inheritance). The variables and methods of this class are largely up to the programmer. However, it is strongly suggested that they be in some way pertaining to salary or budget. This class will: Calculate the budget deficit or surplus. Contain at least three instance variables and their corresponding methods. Note: This is a project about object oriented design and development, not GUI. You may only use the GUI that we have studied and used in this class, i.e. the two input/output dialog boxes using JOptionPane. You may not use any other GUI, such as event handling, MouseListener, ActionListener, or any other listeners, keystroke events, textareas, layout managers, etc. Do not use anything else in javax.swing besides JOptionPane.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started