Java、Person、Student、Employee、Faculty和Staff类


————————————————————————————————————————————
                Person
————————————————————————————————————————————
-name: String
-address: String
-phoneNumber: String
-emailAddress: String
————————————————————————————————————————————
+Person()
+Person(name: String, address: String, 
        phoneNumber: String, emailAddress: String)
+toString(): String
+getName(): String
+setName(name: String): void
+getAddress(): String
+setAddress(address: String): void
+getPhoneNumber(): String
+setPhoneNumber(phoneNumber: String): void
+getEmailAddress(): String
+setEmailAddress(emailAddress: String): void
————————————————————————————————————————————
package pack1;

public class Person {
    private String name;    //姓名
    private String address; //地址
    private String phoneNumber; //电话号码
    private String emailAddress;    //电子邮件地址

    public Person() {
    }

    /**带指定姓名、地址、电话号码、电子邮件地址的构造方法*/
    public Person(String name, String address, String phoneNumber, String emailAddress) {
        this.name = name;
        this.address = address;
        this.phoneNumber = phoneNumber;
        this.emailAddress = emailAddress;
    }

    @Override   /**返回姓名、地址、电话号码、电子邮件地址的字符串*/
    public String toString() {
        return "Name: " + name + "\nAddress: " + address + "\nPhone number: " + 
                 phoneNumber + "\ne-mail address: " + emailAddress;
    }

    /**返回姓名*/
    public String getName() {
        return name;
    }

    /**设置姓名*/
    public void setName(String name) {
        this.name = name;
    }

    /**返回地址*/
    public String getAddress() {
        return address;
    }

    /**设置地址*/
    public void setAddress(String address) {
        this.address = address;
    }

    /**返回电话号码*/
    public String getPhoneNumber() {
        return phoneNumber;
    }

    /**设置电话号码*/
    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    /**返回电子邮件地址*/
    public String getEmailAddress() {
        return emailAddress;
    }

    /**设置电子邮件地址*/
    public void setEmailAddress(String emailAddress) {
        this.emailAddress = emailAddress;
    }
}


————————————————————————————————————
            Student
————————————————————————————————————
-status: int
————————————————————————————————————
+Student()
+Student(name: String, address: String,
         phoneNumber: String, emailAddress: 
                String, status: int)
+toString(): String
+getStatus(): int
+setStatus(status: int): void
————————————————————————————————————

package pack1;

public class Student extends Person{
    public static final int ONE = 1, TWO = 2, THREE = 3, FOUR = 4;  //学生状态常量(大一、大二、大三、大四)
    private int status; //学生状态

    /**默认无参构造方法*/
    public Student() {
        this(null, null, null, null, ONE);
    }

    /**带指定姓名、地址、电话号码、电子邮件地址、状态的构造方法*/
    public Student(String name, String address, String phoneNumber, String emailAddress, 
         int status) {
        super(name, address, phoneNumber, emailAddress);
        this.status = status;
    }

    @Override   /**返回父类字符串描述、学生状态的字符串*/
    public String toString() {
        return super.toString() + "\nStatus: " + status;
    }

    /**返回状态*/
    public int getStatus() {
        return status;
    }

    /**设置状态*/
    public void setStatus(int status) {
        this.status = status;
    }
}


——————————————————————————————————————————————
                    Employee
——————————————————————————————————————————————
-office: String
-salary: double
-hiredDate: Date
——————————————————————————————————————————————
+Employee()
+Employee(name: String, address: String, 
        phoneNumber: String, emailAddress: 
        String, office: String, salary: double)
+toString(): String
+getOffice(): String
+setOffice(office: String): void
+getSalary(): double
+setSalary(salary: double): void
+getHiredDate(): Date
——————————————————————————————————————————————
package pack1;

import java.util.Date;

public class Employee extends Person {
    private String office;  //办公室
    private double salary;  //工资
    private Date hiredDate = new Date();    //受聘日期

    public Employee() {
    }

    /**带指定姓名、地址、电话号码、电子邮件地址、办公室、工资的构造方法*/
    public Employee(String name, String address, String phoneNumber, 
        String emailAddress, String office, double salary) {
        super(name, address, phoneNumber, emailAddress);
        this.office = office;
        this.salary = salary;
    }

    @Override   /**返回父类字符串、办公室、工资、受聘日期的字符串*/
    public String toString() {
        return super.toString() + "\nOffice: " + office + "\nSalary: " + salary + 
                 "\nHired date: " + hiredDate;
    }

    /**返回办公室*/
    public String getOffice() {
        return office;
    }

    /**设置办公室*/
    public void setOffice(String office) {
        this.office = office;
    }

    /**返回工资*/
    public double getSalary() {
        return salary;
    }

    /**设置工资*/
    public void setSalary(double salary) {
        this.salary = salary;
    }

    /**返回受聘日期*/
    public Date getHiredDate() {
        return hiredDate;
    }
}


——————————————————————————————————————————
                Faculty
——————————————————————————————————————————
-workTime: String
-rank: String
——————————————————————————————————————————
+Faculty()
+Faculty(name: String, address: String,
        phoneNumber: String, emailAddress: 
        String, office: String, salary: 
        double, workTime: String, rank: String)
+toString(): String
+getWorkTime(): String
+setWorkTime(workTime: String): void
+getRank(): String
+setRank(rank: String): void
——————————————————————————————————————————
package pack1;

public class Faculty extends Employee{
    private String workTime;    //办公时间
    private String rank;    //级别

    public Faculty() {
    }

    /**带指定姓名、地址、电话号码、电子邮件地址、办公室、工资、办公时间、级别的构造方法*/
    public Faculty(String name, String address, String phoneNumber, String emailAddress,
                   String office, double salary, String workTime, String rank) {
        super(name, address, phoneNumber, emailAddress, office, salary);
        this.workTime = workTime;
        this.rank = rank;
    }

    @Override   /**返回父类字符串、办公时间、级别的字符串*/
    public String toString() {
        return super.toString() + "\nWork time: " + workTime + "\nRank: " + rank;
    }

    /**返回办公时间*/
    public String getWorkTime() {
        return workTime;
    }

    /**设置办公时间*/
    public void setWorkTime(String workTime) {
        this.workTime = workTime;
    }

    /**返回级别*/
    public String getRank() {
        return rank;
    }

    /**设置级别*/
    public void setRank(String rank) {
        this.rank = rank;
    }
}


————————————————————————————————————————————
                Staff
————————————————————————————————————————————
-title: String
————————————————————————————————————————————
+Staff()
+Staff(name: String, address: String,
        phoneNumber: String, emailAddress: 
        String, office: String, salary: 
        double, title: String)
+toString(): String
+getTitle(): String
+setTitle(title: String): void
————————————————————————————————————————————
package pack1;

public class Staff extends Employee{
    private String title;   //职务称号

    public Staff() {
    }

    /**带指定姓名、地址、电话号码、电子邮件地址、办公室、工资、职务称号的构造方法*/
    public Staff(String name, String address, String phoneNumber, String emailAddress,
                 String office, double salary, String title) {
        super(name, address, phoneNumber, emailAddress, office, salary);
        this.title = title;
    }

    @Override   /**返回父类字符串、职务称号的字符串*/
    public String toString() {
        return super.toString() + "\nTitle: " + title;
    }

    /**返回职务称号*/
    public String getTitle() {
        return title;
    }

    /**设置职务称号*/
    public void setTitle(String title) {
        this.title = title;
    }
}



package pack1;

public class TestPerson {
    public static void main(String[] args) {
        Person person = new Person("person", "address", "number", "email");
        System.out.println(person + "\n");

        Employee employee = new Employee("name", "address", "number", "email", "office",     
                                         13000);
        System.out.println(employee + "\n");

        Student student = new Student("name", "address", "student number", "email", 
                                         Student.ONE);
        System.out.println(student + "\n");

        Faculty faculty = new Faculty("faculty", "address", "123", "123.com", "office", 
                                         12399.9, "12am - 6pm", "turtor");
        System.out.println(faculty + "\n");

        Staff staff = new Staff("staff", "address", "phone", "1234.com", "staffOffice", 
                                         14000, "teacher");
        System.out.println(staff);
    }
}

  • 1
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值