/*
* 员工类:
* 共性的抽取
* 姓名,编号,工作方法(抽象)
*/
public abstract class Employee {
private String name;
private String id;
public Employee(String name,String id){
this.name = name;
this.id = id;
}
public abstract void work();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
/*
* 研发部类,属于员工的一种,继承员工类
*/
public abstract class Developer extends Employee{
public Developer(String name,String id){
super(name, id);
}
// public abstract void work();
}
/*
* 维护部类,属于员工一种,继承
*/
public abstract class Maintainer extends Employee{
public Maintainer(String name,String id){
super(name, id);
}
}
/*
* 定义javaEE工程师类
* 属于研发部的员工,继承研发部
*/
public class JavaEE extends Developer{
public JavaEE(String name,String id){
super(name,id);
}
public void work(){
System.out.println(super.getName()+"..."+super.getId()+"..开发淘宝");
}
}
/*
* 网络工程师,维护部的
* 继承维护部类
*/
public class Net extends Maintainer{
public Net(String name,String id){
super(name, id);
}
public void work(){
System.out.println(super.getName()+"..."+super.getId()+"..正在检查网络是否畅通");
}
}
/*
* 测试员工案例
*/
public class Test {
public static void main(String[] args) {
//创建EE对象,调用方法
JavaEE ee = new JavaEE("张三", "开发部001");
ee.work();
//创建Net对象,调用方法
Net net = new Net("李四","维护部005");
net.work();
//多态调用 Employee e = new XXX();
}
}
运行结果:
* 员工类:
* 共性的抽取
* 姓名,编号,工作方法(抽象)
*/
public abstract class Employee {
private String name;
private String id;
public Employee(String name,String id){
this.name = name;
this.id = id;
}
public abstract void work();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
/*
* 研发部类,属于员工的一种,继承员工类
*/
public abstract class Developer extends Employee{
public Developer(String name,String id){
super(name, id);
}
// public abstract void work();
}
/*
* 维护部类,属于员工一种,继承
*/
public abstract class Maintainer extends Employee{
public Maintainer(String name,String id){
super(name, id);
}
}
/*
* 定义javaEE工程师类
* 属于研发部的员工,继承研发部
*/
public class JavaEE extends Developer{
public JavaEE(String name,String id){
super(name,id);
}
public void work(){
System.out.println(super.getName()+"..."+super.getId()+"..开发淘宝");
}
}
/*
* 网络工程师,维护部的
* 继承维护部类
*/
public class Net extends Maintainer{
public Net(String name,String id){
super(name, id);
}
public void work(){
System.out.println(super.getName()+"..."+super.getId()+"..正在检查网络是否畅通");
}
}
/*
* 测试员工案例
*/
public class Test {
public static void main(String[] args) {
//创建EE对象,调用方法
JavaEE ee = new JavaEE("张三", "开发部001");
ee.work();
//创建Net对象,调用方法
Net net = new Net("李四","维护部005");
net.work();
//多态调用 Employee e = new XXX();
}
}
运行结果: