文章目录

  • Java抽象方法和抽象类
  • 抽象之模板方法模式



Java抽象方法和抽象类

抽象类:
Java中可以定义没有方法体的方法,该方法由子类来具体实现。这个没有方法体的方法我们称之为抽象方法,含有抽象方法的类我们称之为抽象类。
抽象方法的特点:
1.只有方法头没有方法体的方法称为抽象方法
2.抽象方法用abstract来修饰,而且含有抽象方法的抽象类也要abstra修饰
3.抽象方法代表一种不确定的操作或行为
4.抽象方法不能被调用
抽象类的特点:
定义中含有抽象方法的类叫做抽象类,抽象类用abstract来修饰。
抽象类代表一种抽象的对象类型。
抽象类不能实例化
抽象类中可以有具体方法,可以没有抽象方。

java 部分方法无需等待_抽象方法

抽象类的不能实例化,那么抽象类如何使用,就是在实例化的时候完成抽象方法
的方法体,然后使用对象调用如下。

java 部分方法无需等待_抽象方法_02


java 部分方法无需等待_子类_03

注意:上面这种方法不是抽象类实例化而是叫做匿名内部类,而且也不建议这么做。
我们一般创建一个类来继承抽象类,并在继承类中完成抽象方法的方法体。

java 部分方法无需等待_子类_04


java 部分方法无需等待_子类_05

抽象之模板方法模式

定义:
一个模板方法用一些抽象的操作定义一个算法,而子类将重新定义这些操作以提供具
体行为。
意图:
定义了一个操作中的一个算法框架,把一些步骤推迟到子类去实现。模板方法模式让
子类不需要改变算法结构。

java 部分方法无需等待_抽象类_06


java 部分方法无需等待_子类_07


java 部分方法无需等待_抽象类_08


java 部分方法无需等待_抽象类_09