8.21 管理人员与职员

发布时间 2023-06-08 18:31:04作者: 盘思动
  • 要求:
定义员工类,具有姓名、年龄、性别属性,并具有构造方法和显示数据方法。
定义管理层类,继承员工类,并有自己的属性职务和年薪。
定义职员类,继承员工类,并有自己的属性所属部门和月薪。
class Employee {
	private String name ;
	private int age ;
	private String sex ;
	public Employee() {}
	public Employee(String name,int age,String sex) {
		this.name = name ;
		this.age = age ;
		this.sex = sex ;
	}
	public String getInfo() {
		return "姓名:" + this.name + "、年龄:" + this.age + "、性别:" + this.sex ;
	}
}

class Manager extends Employee {	// 管理层
	private String job ;
	private double income ;
	public Manager() {}
	public Manager(String name,int age,String sex,String job,double income) {
		super(name,age,sex) ;
		this.job = job ;
		this.income = income ;
	}
	public String getInfo() {
		return "【管理层】" + super.getInfo() + "、职务:" + this.job + "、年薪:" + this.income ;
	}
}

class Staff extends Employee {
	private String dept ;
	private double salary ;
	public Staff() {}
	public Staff(String name,int age,String sex,String dept,double salary) {
		super(name,age,sex) ;// 调用父类构造方法
		this.dept = dept ;
		this.salary = salary ;
	}
	public String getInfo() {
		return "【职员】" + super.getInfo() + "、部门:" + this.dept + "、月薪:" + this.salary ;
	}
}

public class HelloWorld {
	public static void main(String args[]) {
		Manager man = new Manager("张三",38,"女","主管",150000.00) ;
		Staff sta = new Staff("李四",18,"男","出纳",3000.00) ;
		System.out.println(man.getInfo()) ;
		System.out.println(sta.getInfo()) ;
	}
}