抽象abstract
- 什么是抽象类
- 抽象类的注意事项、特点
- 使用好处
- 常见应用场景:模版方法设计模式
- 可以使用final关键字修饰模版方法
什么是抽象类
- 在Java中有一个关键字叫:abstract,它就是抽象的意思,可以用它修饰类、成员方法。
- abstract修饰类,这个类就是抽象类;修饰方法,这个方法就是抽象方法。
抽象类的注意事项、特点
-
抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类。
-
类该有的成员(成员变量、方法、构造器)抽象类都可以有。
-
抽象类最主要的特点:抽象类不能创建对象,仅作为一种特殊的父类,让子类继承并实现。
-
一个类继承抽象类,必须重写完抽象类的全部抽象方法,否则这个类也必须定义成抽象类。
使用好处
父类知道每个子类都要做某个行为,但每个子类要做的情况不一样,父类就定义成抽象方法,交给子类去重写实现,我们设计这样的抽象类,就是为了更好的支持多态。
某宠物游戏,需要管理猫、狗的数据。
猫的数据有:名字;行为是:喵喵喵的叫~
狗的数据有:名字;行为是:汪汪汪的叫~
请用面向对象编程设计该程序。
常见应用场景:模版方法设计模式
可以使用final关键字修饰模版方法
- 模板方法是给对象直接使用的,不能被子类重写。
- 一旦子类重写了模板方法,模板方法就失效了。