public abstract class Development extends Employee{
}
子类1:
java复制代码
public class JavaEE extends Development{
@Override
public void work() {
System.out.println("员工号为"+this.getId()+"的"+this.getName()+"正在开发网站");
}
}
子类2:
java复制代码
public class Android extends Development{
@Override
public void work() {
System.out.println("员工号为"+this.getId()+"的"+this.getName()+"正在开发APP");
}
}
子类的子类:
java复制代码
public abstract class Employee {
private int id;
private String name;
public Employee() {
}
public Employee(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public abstract void work();
}
测试类:
java复制代码
public class Demo117Test {
public static void main(String[] args) {
JavaEE javaEE = new JavaEE();
javaEE.setId(1);
javaEE.setName("大壮");
javaEE.work();
System.out.println("------------------------------------------------------------");
Android android = new Android();
android.setId(2);
android.setName("图图");
android.work();
}
}
运行结果:
方式2 利用构造赋值
父类:
java复制代码
public abstract class Development extends Employee{
public Development() {
}
public Development(int id, String name) {
super(id, name);
}
}
子类1:
java复制代码
public class JavaEE extends Development{
public JavaEE() {
}
public JavaEE(int id, String name) {
super(id, name);
}
@Override
public void work() {
System.out.println("员工号为"+this.getId()+"的"+this.getName()+"正在开发网站");
}
}
子类2:
java复制代码
public class Android extends Development{
public Android() {
}
public Android(int id, String name) {
super(id, name);
}
@Override
public void work() {
System.out.println("员工号为"+this.getId()+"的"+this.getName()+"正在开发APP");
}
}
子类的子类:
java复制代码
public abstract class Employee {
private int id;
private String name;
public Employee() {
}
public Employee(int id, String name) {
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public abstract void work();
}
测试类:
java复制代码
public class Demo118Test2 {
public static void main(String[] args) {
JavaEE javaEE = new JavaEE(1,"张三");
javaEE.work();
System.out.println("------------------------------------------------------------------");
Android android = new Android(2,"李四");
android.work();
}
}