抽象类的概述
一个没有方法体的方法被定义为抽象方法,而类中如果有抽象方法,该类被定义为抽象类
抽象类关键字
abstract
抽象类的特点
1.抽象类抽象方法必须有abstract关键字修饰
public abstract void eat();
public abstract class 类名 {}
2.有抽象方法一定是抽象类,抽象类里面不一定有抽象方法
3.抽象类不能实例化
抽象类如何实例化呢?参照多态的方式,通过子类对象实例化,这叫抽象多态
4.抽象类的子类
要么重写抽象类中的所有抽象方法
要么是抽象类
抽象类的成员特点
1.成员变量
可以是变量也可以是常量(final)
2.构造方法
有构造方法但不能实例化作用是用于子类访问父类数据的初始化
3.成员方法
可以有抽象方法用来限定子类必须完成某些动作比如方法重写
也可以有非抽象方法:提高代码复用性