先写一个父类
public class Staff {
//创建员工类
private String name; //创建名字,年龄,性别
private int age;
private char sex;
public Staff(String name, char sex, int age) {
//员工类的构造方法
this.name = name;
this.age = age;
this.sex = sex;
}
public String print() {
//显示数据的方法
return "姓名" + this.getName() + " " + "年龄" + this.getAge() + " " + "性别" + this.getSex() + " ";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public char getSex() {
return sex;
}
public void setSex(char sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
写两个子类继承父类
class Management extends Staff {
//创建管理层类并继承员工类
private String post; //管理层类自己的属性,职务和年薪
private int annualSalary;
public Management(String name, char sex, int age, String post, int annualSalary) {
super(name, sex, age);
this.annualSalary = annualSalary;
this.post = post;
}
public String print() {
//输出员工类有的属性和管理层类特有的属性
return super.print() + "职务" + this.getPost() + " " + "年薪" + this.getAnnualSalary() + " ";
}
public String getPost() {
return post;
}
public void setPost(String post) {
this.post = post;
}
public int getAnnualSalary() {
return annualSalary;
}
public void setAnnualSalary(int annualSalary) {
this.annualSalary = annualSalary;
}
}
class Worker extends Staff {
//创建职员类并继承员工类
private String department; //职员类自己的属性,部门和月薪
private int monthSalary;
public Worker(String name, char sex, int age, String department, int monthSalary) {
super(name, sex, age);
this.department = department;
this.monthSalary = monthSalary;
}
public String print() {
return super.print() + "姓名" + this.getDepartment() + " " + "年龄" + this.getMonthSalary();
}
public String getDepartment() {
return department;
}
public void setDepartment(String department) {
this.department = department;
}
public int getMonthSalary() {
return monthSalary;
}
public void setMonthSalary(int monthSalary) {
this.monthSalary = monthSalary;
}
}
写一个测试类
public class StaffTest {
public static void main(String[] args) {
Worker a = new Worker("ZhangSan",'男',34,"监管",6000);
a.print();
Management b = new Management("李四",'男',45,"总监",14000);
b.print();
}
}