要求:
在黑马程序员中有很多员工(Employee)
按照工作内容不同分为教研部员工(Teacher)和行政部员工(AdminStaff)。
教研部根据教学的方式不同又分为讲师(Lecturer)和助教(Tutor)。
行政部根据负责事项不同,又分为维护专员(Maintainer)和采购专员(Buyer)。
公司的每一个员工都编有编号、姓名和其负责的工作。
每个员工都有工作的功能,但是具体的工作内容又不一样。写一个带有继承结构的标准javabean
标准的javabean类:
1.类名要见名知义(阿里巴巴编码规则)
2.成员变量要用private修饰
3.要有无参构造和带全部参数的构造
4.每一个成员变量都要有对应的set和get方法
•Employee
package com.itqingyu.oopextendsdemo6;
public class AdminStaff extends Employee {
//空参构造
public AdminStaff() {
}
//带全部参数的构造
public AdminStaff(String id, String name, String job) {
//super();访问父类构造
super(id, name, job);
}
@Override
public void work() {
System.out.println("行政部员工正在工作...");
}
}
•Teacher
package com.itqingyu.oopextendsdemo6;
public class Teacher extends Employee {
//空参构造
public Teacher() {
}
//带全部参数的构造
public Teacher(String id, String name, String job) {
//用super();来访问父类的构造方法
super(id, name, job);
}
@Override
public void work() {
System.out.println("教研部员工正在工作...");
}
}
•AdminStaff
package com.itqingyu.oopextendsdemo6;
public class AdminStaff extends Employee {
//空参构造
public AdminStaff() {
}
//带全部参数的构造
public AdminStaff(String id, String name, String job) {
//super();访问父类构造
super(id, name, job);
}
@Override
public void work() {
System.out.println("行政部员工正在工作...");
}
}
•Lecture
package com.itqingyu.oopextendsdemo6;
public class Lecture extends Teacher {
public Lecture() {
}
public Lecture(String id, String name, String job) {
super(id, name, job);
}
@Override
public void work() {
System.out.println("讲师正在讲课");
}
}
•Tutor
package com.itqingyu.oopextendsdemo6;
public class Tutor extends Teacher {
public Tutor() {
}
public Tutor(String id, String name, String job) {
super(id, name, job);
}
@Override
public void work() {
System.out.println("助教正在帮助讲师工作...");
}
}
•Maintainer
package com.itqingyu.oopextendsdemo6;
public class Maintainer extends AdminStaff {
public Maintainer() {
}
public Maintainer(String id, String name, String job) {
super(id, name, job);
}
@Override
public void work() {
System.out.println("维护专员正在进行维护...");
}
}
•Buyer
package com.itqingyu.oopextendsdemo6;
public class Buyer extends AdminStaff {
public Buyer() {
}
public Buyer(String id, String name, String job) {
super(id, name, job);
}
@Override
public void work() {
System.out.println("采购专员正在进行采购...");
}
}
•Test
package com.itqingyu.oopextendsdemo6;
public class Test {
public static void main(String[] args) {
//创建对象并赋值
Lecture l = new Lecture("qingyu001", "张三", "讲师");
System.out.println(l.getId() + " " + l.getName() + " " + l.getJob());
l.work();
//创建对象并赋值
Tutor t = new Tutor("qingyu002", "李四", "助教");
System.out.println(t.getId() + " " + t.getName() + " " + t.getJob());
t.work();
//创建对象并赋值
Maintainer m = new Maintainer("qingyu003", "王五", "维护专员");
System.out.println(m.getId() + " " + m.getName() + " " + m.getJob());
m.work();
//创建对象并赋值
Buyer b = new Buyer("qingyu004", "赵六", "采购专员");
System.out.println(b.getId() + " " + b.getName() + " " + b.getJob());
b.work();
}
}
•编码小白, 不喜勿喷,有问题恳请各位大佬多多指出!!!
797

被折叠的 条评论
为什么被折叠?



