Java人事管理系统模块
要求:
假设在一个企业人事管理系统员工管理模块中,有员工类存在,员工类中包含一个计算年薪的方法(抽象),其中包含普通员工和部门经理,普通员工包含3个属性:姓名、工号以及月薪。部门经理除了含有普通员工的属性外,另外还有一个奖金属性。请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问,实例化5名普通员工,2名部门经理,计算这七名员工的年薪。
通过Java进行功能实现:
//员工父类
public abstract class Emp {
private int eno;
private String ename;
private double sal;
public Emp(double sal) {
this.sal = sal;
}
public int getEno() {
return eno;
}
public void setEno(int eno) {
this.eno = eno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public double getSal() {
return sal;
}
public void setSal(double sal) {
this.sal = sal;
}
public abstract double calcYearSal();
}
//普通员工类
public class EmpNormal extends Emp{
public EmpNormal(double sal) {
super(sal);
}
@Override
public double calcYearSal() {
return getSal()*13;
}
}
//部门经理类
public class EmpManager extends Emp{
private double comm;
public EmpManager(double comm,double sal) {
super(sal);
this.comm = comm;
}
@Override
public double calcYearSal() {
// TODO Auto-generated method stub
return getSal()*13+comm;
}
}
//测试类
public class Test {
public static void main(String[] args) {
Emp e1=new EmpNormal(12000);
Emp e2=new EmpNormal(13000);
Emp e3=new EmpNormal(14000);
Emp e4=new EmpNormal(15000);
Emp e5=new EmpNormal(16000);
Emp e6=new EmpManager(18000,10000);
Emp e7=new EmpManager(19000,10000);
System.out.println(e1.calcYearSal());
}
}
代码测试结果