抽象类
使用abstract修饰的类
对一组对象进行更高层级抽象时, 形成现抽象的类, 就可以定义为抽象类
-
抽象类也是一种引用数据类型
-
当一个类的某个操作无法具体实现时,这个操作可以定义为抽象方法
-
抽象类一般作为其他类的父类存在
-
抽象类不能实例化对象,抽象类的引用需要赋值子类对象
Animal animal; animal = new Dog();
-
含有抽象方法的类必须定义为抽象类
-
抽象类可以赋值匿名内部类对象
animal = new Animal() {};
-
使用abstract声明的方法只有声明部分没有方法体
public abstract void func();
-
匿名内部类中可以重写抽象类的抽象方法
```java new Pet() { @Override public void actCute() { System.out.println("摇尾巴~~") } } ```
-
子类必须重写抽象类中所有的抽象方法,如果子类没有重写所有的抽象方法,子类也需要定义为抽象类。
-
抽象类的引用可以赋值匿名内部类对象
-
abstract与final不可以共存