一、今天干了什么
1.抽象类与抽象方法
abstract关键字的使用:
可以用来修饰:类、方法
(1)abstract修饰类:抽象类;
①此类不能实例化
②抽象类中一定有构造器,便于子类对象实例化时调用(涉及子类对象实例化的全过程)
③开发中,都会提供抽象类的子类,让子类对象实例化,完成相关的操作
(2)abstract修饰方法:该方法没有方法体;
①只有方法的声明
public abstract void eat();//抽象方法
②包含抽象方法的类一定是抽象类。反之,抽象类中不一定有抽象方法
③若子类中重写了父类中所有的抽象方法,此子类才可以实例化;
若子类没有重写父类中所有的抽象方法,此子类也是一个抽象类,需要用abstract修饰
注意:
①abstract不能修饰属性、代码块、构造器等结构;
②abstract不能用来修饰私有方法、静态方法、final的方法、final的类;
抽象类/方法与C++中虚函数的应用场景一致;
2.抽象类的匿名子类
学自尚硅谷,转载一下:https://blog.csdn.net/xiaotai1234/article/details/107235664/
二、明天干什么
接口