Using the following UML outline, create a JAVA program. Department - name: Strin
ID: 3910879 • Letter: U
Question
Using the following UML outline, create a JAVA program.
Department
- name: String
- buildingNumber: int
+ Department(String, int)
+ {all getters/setters}
+ toString(): String
+ equals(Object): boolean
Employee
- badgeNumber: int
- firstName: String
- lastName: String
- department: Department
+ Employee(int, String, String, Department)
+ {all getters/setters}
+ toString(): String
+ equals(Object): boolean
Consultant
- hourlyRate: double
+ Consultant(int, String, String, Department)
+ Consultant(int, String, String, Department,
double)
+ g/sHourlyRate
+ toString(): String
+ equals(Object): boolean
SalariedEmployee
- annualSalary: double
+ SalariedEmployee(int, String, String,
Department)
+ SalariedEmployee(int, String, String,
Department, double)
+ g/sAnnualSalary
+ toString(): String
+ equals(Object): boolean
EmployeeTest
+ main(String[]): void
- displayDepartments(ArrayList<Department>): void
- readDepartmentFromFile(String): ArrayList<Department>
- populateEmployeeArray(ArrayList<Employee>, ArrayList<Department>): void
Explanation / Answer
===========================
Department.java
public class Department {
String name;
int buildingNumber;
public Department(String name, int buildingNumber) {
this.name = name;
this.buildingNumber = buildingNumber;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getBuildingNumber() {
return buildingNumber;
}
public void setBuildingNumber(int buildingNumber) {
this.buildingNumber = buildingNumber;
}
@Override
public String toString() {
return "Department{" +
"name='" + name + ''' +
", buildingNumber=" + buildingNumber +
'}';
}
@Override
public boolean equals(Object obj) {
return buildingNumber == ((Department)obj).buildingNumber ;
}
}
===========================
Employee.java
public class Employee {
int badgeNumber;
String firstName;
String lastName;
Department department;
public Employee(int badgeNumber, String firstName, String lastName, Department department) {
this.badgeNumber = badgeNumber;
this.firstName = firstName;
this.lastName = lastName;
this.department = department;
}
public int getBadgeNumber() {
return badgeNumber;
}
public void setBadgeNumber(int badgeNumber) {
this.badgeNumber = badgeNumber;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
@Override
public String toString() {
return "Employee{" +
"badgeNumber=" + badgeNumber +
", firstName='" + firstName + ''' +
", lastName='" + lastName + ''' +
", department=" + department +
'}';
}
@Override
public boolean equals(Object obj) {
return badgeNumber == ((Employee)obj).badgeNumber ;
}
}
===========================
Consultant.java
public class Consultant {
double hourlyRate;
public Consultant(int badgeNumber, String firstName, String lastName, Department department) {
}
public Consultant(int badgeNumber, String firstName, String lastName, Department department, double hourlyRate) {
this.hourlyRate = hourlyRate;
}
public double getHourlyRate() {
return hourlyRate;
}
public void setHourlyRate(double hourlyRate) {
this.hourlyRate = hourlyRate;
}
@Override
public String toString() {
return "Consultant{" +
"hourlyRate=" + hourlyRate +
'}';
}
@Override
public boolean equals(Object obj) {
return super.equals(obj);
}
}
===========================
SalariedEmployee.java
public class SalariedEmployee {
double annualSalary;
public SalariedEmployee(int badgeNumber, String firstName, String lastName, Department department) {
}
public SalariedEmployee(int badgeNumber, String firstName, String lastName, Department department, double annualSalary) {
this.annualSalary = annualSalary;
}
public double getHourlyRate() {
return annualSalary;
}
public void setHourlyRate(double annualSalary) {
this.annualSalary = annualSalary;
}
@Override
public String toString() {
return "SalariedEmployee{" +
"annualSalary=" + annualSalary +
'}';
}
@Override
public boolean equals(Object obj) {
return super.equals(obj);
}
}
===========================
EmployeeTest.java
import java.util.*;
import java.io.*;
public class EmployeeTest {
public static void main(String[] args) throws FileNotFoundException {
EmployeeTest test = new EmployeeTest();
ArrayList<Department> arr_depts = test.readDepartmentFromFile("test.txt");
test.displayDepartments(arr_depts);
}
private ArrayList<Department> readDepartmentFromFile(String file_name) throws FileNotFoundException {
File file_o = new File(file_name);
Scanner sc = new Scanner(file_o);
ArrayList<Department> arr = new ArrayList<>();
while (sc.hasNextLine()) {
String str = sc.nextLine();
String s[] = str.split(" ");
arr.add(new Department(s[0], Integer.parseInt(s[1])));
}
return arr;
}
private void displayDepartments(ArrayList<Department> arr_depts) {
System.out.println("Departments :: ");
for(Department dept : arr_depts) {
System.out.println(dept.toString());
}
}
private void populateEmployeeArray(ArrayList<Employee> arr_emps, ArrayList<Department> arr_depts) {
System.out.println("Employees :: ");
for(Employee emp : arr_emps) {
System.out.println(emp.toString());
}
System.out.println("Departments :: ");
for(Department dept : arr_depts) {
System.out.println(dept.toString());
}
}
}
===========================
test.txt
IT 1
Bank 2
HR 3
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.