Question

Design a class named Person and its two derived classes named Student and Employee. MakeFaculty and Staff derived classes of Employee

In Java

(The Person, Student, Employee, Faculty, and Staff classes)

Design a class named Person and its two derived classes named Student and Employee. MakeFaculty and Staff derived classes of Employee. A person has a name, address, phone number, and e-mail address. A student has a class status (freshman, sophomore, junior, or senior). An employee has an office, salary, and date hired. Define a class namedMyDate that contains the fields year, month, and day. A faculty member has office hours and a rank. A staff member has a title. Define an abstract to String function in the Person class and override it in each class to display the class name and the person’s name.

Implement the classes. Write a test program that creates a Person, StudentEmployee, Faculty, and Staff, and invokes theirtoString() functions.

0 0
Add a comment Improve this question Transcribed image text
Answer #1

CODE

abstract class Person {

protected String name, address, phoneNumber;

protected String email;

public Person(String name, String address, String phoneNumber, String email) {

this.name = name;

this.address = address;

this.phoneNumber = phoneNumber;

this.email = email;

}

public abstract String toString();

}

enum status {

freshman,

sophomore,

junior,

senior;

}

class Student extends Person {

protected status st;

public Student(String name, String address, String phoneNumber, String email, status st) {

super(name, address, phoneNumber, email);

this.st = st;

}

public String toString() {

return this.getClass().getSimpleName() + " -> Name: " + this.name;

}

}

class MyDate {

private int day, month, year;

public MyDate(int day, int month, int year) {

this.day = day;

this.month = month;

this.year = year;

}

}

class Employee extends Person {

protected String office;

protected double salary;

protected MyDate datehired;

public Employee(String name, String address, String phoneNumber, String email, String office, double salary,

MyDate datehired) {

super(name, address, phoneNumber, email);

this.office = office;

this.salary = salary;

this.datehired = datehired;

}

public String toString() {

return this.getClass().getSimpleName() + " -> Name: " + this.name;

}

}

class Faculty extends Employee {

private double officeHours;

private String rank;

public Faculty(String name, String address, String phoneNumber, String email, String office, double salary,

MyDate datehired, double officeHours, String rank) {

super(name, address, phoneNumber, email, office, salary, datehired);

this.officeHours = officeHours;

this.rank = rank;

}

public String toString() {

return this.getClass().getSimpleName() + " -> Name: " + this.name;

}

}

class Staff extends Employee {

private String title;

public Staff(String name, String address, String phoneNumber, String email, String office, double salary,

MyDate datehired, String title) {

super(name, address, phoneNumber, email, office, salary, datehired);

this.title = title;

}

public String toString() {

return this.getClass().getSimpleName() + " -> Name: " + this.name;

}

}

public class Main {

public static void main(String[] args) {

Person p1 = new Student("John Doe", "27th Street, Ave Street", "123456", "[email protected]", status.sophomore);

System.out.println(p1);

Person p2 = new Employee("John Doe", "27th Street, Ave Street", "123456", "[email protected]", "sample office", 12456.89, new MyDate(1, 4, 2019));

System.out.println(p2);

Employee e1 = new Staff("John Doe", "27th Street, Ave Street", "123456", "[email protected]", "sample office", 12456.89, new MyDate(1, 4, 2019), "Staff Engineer");

System.out.println(e1);

Employee e2 = new Faculty("John Doe", "27th Street, Ave Street", "123456", "[email protected]", "sample office", 12456.89, new MyDate(1, 4, 2019), 8, "Senior Developer");

System.out.println(e2);

}

}

Add a comment
Know the answer?
Add Answer to:
Design a class named Person and its two derived classes named Student and Employee. MakeFaculty and Staff derived classes of Employee
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • a c++ program (The Person, Student, Employee, Faculty, and Staff classes) Design a class named Person...

    a c++ program (The Person, Student, Employee, Faculty, and Staff classes) Design a class named Person and its two subclasses named Student and Employee. Make Faculty and Staff subclasses of Employee. A person has a name, address, phone number, and email address. A student has a class status (freshman, sophomore, junior, or senior). Define the status as a constant. An employee has an office, salary, and date hired. Use the MyDate classto create an object for date hired. A faculty...

  • Java Programming Design a class named Person and its two subclasses named Student and Employee. A...

    Java Programming Design a class named Person and its two subclasses named Student and Employee. A person has a name, address, phone number, and email address. A student has a class status (freshman, sophomore, junior, or senior). Define the status as a constant. An employee has an office, salary, date hired. Define a class named MyDate that contains the fields year, month, and day. Override the toString method in each class to display the class name and the person's name....

  • Implement an abstract class named Person and two subclasses named Student and Staff in Java. A person has a name, address, phone number and e-mail address. A student has a credit hour status (freshman...

    Implement an abstract class named Person and two subclasses named Student and Staff in Java. A person has a name, address, phone number and e-mail address. A student has a credit hour status (freshman, sophomore, junior, or senior). Define the possible status values using an enum. Staff has an office, salaray, and date-hired. Implement the above classes in Java. Provide Constructors for classes to initialize private variables. Getters and setters should only be provided if needed. Override the toString() method...

  • Part I: (The Myate class) Design a class named MyDate. The class contains: • The data...

    Part I: (The Myate class) Design a class named MyDate. The class contains: • The data fields year, month, and day that represent a date. Month is 0-based, i.e., 0 is for January. • A no-arg constructor that creates a MyDate object for the current date. • A constructor that constructs a MyDate object with a specified elapsed time since midnight, January 1, 1970, in milliseconds. • A constructor hat constructs a MyDate object with the specified year, month, and...

  • In this laboratory, we are going to build a base class and a collection of derived...

    In this laboratory, we are going to build a base class and a collection of derived classes. Write the code to implement the class Person. A person has a name, address,telephone number and and E-Mail address. Be sure to include accessor functions to return each of these values. Create a derived class Student which has a class status (freshman, sophomore, junior, or senior). Create a derived class Employee which has the attributes office, salary, and date hired. Now define a...

  • Concepts Tested in this Program: Class Design Constructors Objects Inheritance Program:   Design a class named Person...

    Concepts Tested in this Program: Class Design Constructors Objects Inheritance Program:   Design a class named Person and its two subclasses, Student and Employee. Make Faculty and Staff subclasses of Employee. A Person object has a name, address, phone number, and email address (all Strings). A Student Object has a class status (freshman, sophomore, junior, or senior). Define the status as a final String variable. An Employee Object has an office number, salary (both ints ), and a date hired. Use...

  • Please provide the code for the last part(client side program). yes i have all the class...

    Please provide the code for the last part(client side program). yes i have all the class implementations. ``` person.h #ifndef PERSON_H #define PERSON_H #include <string> using namespace std; class person { public: person(); string getname() const; string getadd() const; string getemail() const; string getphno() const; string toString() const; private: string name; string add; string email; string phno; }; ```person.cpp #include "person.h" person::person() { name = "XYZ"; add="IIT "; email="%%%%"; phno="!!!!!"; } string person::getname() const { return name; } string person::getadd()...

  • Please answer all the questions 2. Design two programs named BaseClass and SubClass. In BaseClass, define...

    Please answer all the questions 2. Design two programs named BaseClass and SubClass. In BaseClass, define a variable xVar (type: char, value: 65), and a method myPrint to print xVar. SubClass is a subclass of BaseClass. In SubClass, define a variable yVar (type: int, value: 16) and another variable strVar (type: String, value: "java program!"). There is also a method myPrint to print the value of yVar and strVar in SubClass, as well as an additional method printAll, in which...

  • Develop a set of classes for a college to use in various student service and personnel applications. Classes you need to design include the following: • Person — A Person contains the following fields...

    Develop a set of classes for a college to use in various student service and personnel applications. Classes you need to design include the following: • Person — A Person contains the following fields, all of type String: firstName, lastName, address, zip, phone. The class also includes a method named setData() that sets each data field by prompting the user for each value and a display method that displays all of a Person’s information on a single line at the...

  • 2- Write a program that has a Person class, a Student class, that is derived from...

    2- Write a program that has a Person class, a Student class, that is derived from Person, and a Faculty class, derived from Person as well, with the following specifications: The Person class has the following members: a. An integer private member variable named SSN. b. Two string protected member variables named firstName and lastName. C. An integer protected member variable named age. d. A constructor that takes SSN, first name, last name, and age as parameters. e. A constructor...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT