一、什么是抽象类
通常用abstract修饰的类为抽象类。
二、理解
(1)java类在class前加abstract声明为抽象类,抽象类可以声明,但不能实例化。
(2)java类中有一个以上的抽象方法,则此类就必须声明为抽象类,该方法也必须声明为抽象方法。
抽象方法是不可以有body的(即 public abstract void test();).
(3)抽象类中可以有非抽象方法,非抽象方法则必须有body。
(4)抽象类中如果全是抽象方法,则此抽象类就是一个纯抽象类,也就是成了接口了。
(5)抽象类中的抽象方法必须是public或者protected修饰,不能用private修饰(若用private修饰则不能被子类继承)。
(6)如果一个类继承抽象类则子类必须实现抽象类中的所有抽象方法,如果不能全部实现抽象方法则子类也必须声明为抽象类。
(7)一个类只能继承一个抽象类,但可以实现多个接口。