23种设计模式(模版模式)

模版模式 (Template Pattern)

概念

如何在应用系统中定义一个相对固定的业务流程,具体的实现细节延迟到子类中去实现

适用场景

用来定制"顶级业务流程",并且不关心具体的实现细节

具体步骤

1.定义一个抽象的父类,在这个父类中设计好抽象方法,这些方法由子类去实现

2.在这个抽象父类中,还要定义一个具体的"执行业务流程"的模板方法,在这个方法中去调用其他的抽象方法.

优点和缺点

优点:

1.封装不变部分,扩展可变部分。

2.提取公共代码,便于维护。

3.行为由父类控制,子类实现。

缺点:

每一个不同的实现都需要一个子类来实现,导致类的个数增加,使得系统更加庞大。

代码实例

/**
 * description:Java 23种设计模式之一:模板设计模式
 * 作用:定义顶级业务流程,具体的实现延迟到子类
 * @author Administrator
 * @date 2022/3/21 10:51
 */
public abstract class Travel {
    public abstract void go();

    public abstract void play();

    public abstract void back();

    /**定制顶级业务流程*/
    //final关键字的作用是保证该顶级业务流程方法不能被覆盖
    public final void topMethod() {
        go();
        play();
        back();
    }
}
posted @ 2022-03-21 12:42  JanoCode  阅读(80)  评论(0)    收藏  举报