Write Java programs as follows: Design a class named Personand its two subclasse
ID: 441257 • Letter: W
Question
Write Java programs as follows: Design a class named Personand its two subclasses named Student and Employee. Make Faculty and Staff subclasses of Employee. All instance variables (states) must be declared as private. Person class has a name and an email address Student class has a class status (freshman, sophomore, junior, or senior). Define the status as a constant. has a gpa (grade point average). Employee class has an office (office number, e.g., 1245) and salary. Faculty class has a rank (professor, associate professor, assistant professor, lecturer). Define the rank as a constant. Staff class has a title; e.g., secretary, manager, ?Explanation / Answer
public class Person { public String name; public String address; public String phone; public String email; public Person(String name, String address, String phone, String email) { this.name = name; this.address = address; this.phone = phone; this.email = email; } @Override public String toString() { return this.getClass().getName() + " " + name; } } Class #2 - Student.java: public class Student extends Person { // capitalize CLASS_STATUS variable is a typical Java convention // for variables that have been declared as final (aka: constant) public final String CLASS_STATUS; public Student(String name, String address, String phone, String email, String classStatus) { super(name, address, phone, email); CLASS_STATUS = classStatus; } } Class #3 - Employee.java: public class Employee extends Person { public String office; public double salary; public Employee(String name, String address, String phone, String email) { super(name, address, phone, email); } } Class #4 - Faculty.java: public class Faculty extends Employee { public String officeHours; public int rank; public Faculty(String name, String address, String phone, String email) { super(name, address, phone, email); } } Class #5 - Staff.java: public class Staff extends Employee { public String title; public Staff(String name, String address, String phone, String email) { super(name, address, phone, email); } } Class #6 - TestPerson (test program): public class TestPerson { public static void main(String[] args) { Person person = new Person("John Doe", "123 Somewhere", "415-555-1212", "johndoe@somewhere.com"); Person student = new Student("Mary Jane", "555 School Street", "650-555-1212", "mj@abc.com", "junior"); Person employee = new Employee("Tom Jones", "777 B Street", "408-888-9999", "tj@xyz.com"); Person faculty = new Faculty("Jill Johnson", "999 Park Ave", "925-222-3333", "jj@abcxyz.com"); Person staff = new Staff("Jack I. Box", "21 Jump Street", "707-212-1112", "jib@jack.com"); System.out.println(person.toString() + " "); System.out.println(student.toString() + " "); System.out.println(employee.toString() + " "); System.out.println(faculty.toString() + " "); System.out.println(staff.toString() + " "); } }
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.