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