0、 abstract 关键字
- abstract : 抽象,可修饰方法、类;
- 概述 :当所有的子类对父类某个方法都进行不同程度的重写,那么父类中被重写的方法的方法体没有任何意义,所以可以把方法体去掉再加上 abstract 关键字来修饰,将该方法变为抽象方法,那么抽象方法所以在的类(即父类)需要变成抽象类(需要用 abstract 修饰);
- 若存在抽象方法时,一定要被重写; 当普通类继承抽象类,需要重写父类中所有的抽象方法,如果不想重写所有的抽象方法,可以把普通类变为抽象类;
- 抽象类宗旨就是延展类的继承结构
abstract class Person{
public abstract void eat();
public void sleep(){
System.out.println("人睡觉...");
}
}
class Student extends Person{
@Override
public void eat() {
System.out.println("吃饱了才有力气学习...");
}
@Override
public void sleep() {
System.out.println("睡醒了才有精神学习...");
}
}
abstract class Teacher extends Person{