需求:某IT公司有多名员工,按照员工负责的工作不同,进行了部门的划分(研发部员工、维护部员工)。研发部根据所需研发的内容不同,又分为JavaEE工程师、Android工程师;维护部根据所需维护的内容不同,又分为网络维护工程师、硬件维护工程师。
公司的每名员工都有他们自己的员工编号、姓名,并要做它们所负责的工作。
工作内容:
JavaEE工程师: 员工号为xxx的 xxx员工,正在研发淘宝网站
Android工程师:员工号为xxx的 xxx员工,正在研发淘宝手机客户端软件
网络维护工程师:员工号为xxx的 xxx员工,正在检查网络是否畅通
硬件维护工程师:员工号为xxx的 xxx员工,正在修复打印机
请根据描述,完成员工体系中所有类的定义,并指定类之间的继承关系。进行XX工程师类的对象创建,完成工作方法的调用。
员工抽象类:
public abstract class Employee {
private int emp_id;//员工编号
private String emp_name;//员工姓名
public int getEmp_id() {
return emp_id;
}
public void setEmp_id(int emp_id) {
this.emp_id = emp_id;
}
public String getEmp_name() {
return emp_name;
}
public void setEmp_name(String emp_name) {
this.emp_name = emp_name;
}
//工作方法(抽象方法)
public abstract void work();
}
研发部员工抽象类:
public abstract class Developer extends Employee{
}
维护部门抽象类:
public abstract class Maintainer extends Employee{
}
JavaEE工程师类:
public class JavaEE extends Developer{
@Override
public void work() {
System.out.println("员工编号为"+getEmp_id()+"的"+getEmp_name()+"员工,正在研发淘宝网站");
}
}
Android工程师类:
public class Android extends Developer{
@Override
public void work() {
System.out.println("员工编号为"+getEmp_id()+"的"+getEmp_name()+"员工,正在研发淘宝手机客户端软件");
}
}
在测试类中,创建JavaEE工程师对象,完成工作方法的调用:
public class Test {
public static void main(String[] args) {
JavaEE javaEE = new JavaEE();
javaEE.setEmp_id(123);
javaEE.setEmp_name("李四");
javaEE.work();
}
}
运行结果: