设计模式——模板方法模式

Posted shenqiaqia

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式——模板方法模式相关的知识,希望对你有一定的参考价值。

这次来看下模板方法,还是先来看下head first的定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

再来看下类图:

技术图片

看下代码吧:

public abstract class DB 

    public void connectDB() 
        if (dirverHook()) 
            prepareDirver();
        
        getConnect();
    

    public abstract void prepareDirver();

    public boolean dirverHook() 
        return true;
    

    public void getConnect() 
        System.out.println("获取连接");
    

  

public class mysql extends DB 

    @Override
    public void prepareDirver() 
        System.out.println("准备mysql驱动");
    

    @Override
    public boolean dirverHook() 
        return false;
    

  

public class Oracle extends DB 

    @Override
    public void prepareDirver() 
        System.out.println("准备oracle驱动");
    

  

以上是关于设计模式——模板方法模式的主要内容,如果未能解决你的问题,请参考以下文章

设计模式(十五)——模板方法模式

设计模式----模板方法模式

设计模式-模板方法模式(15)

设计模式--15模板方法模式

手撸golang 行为型设计模式 模板方法模式

大话设计模式—模板方法模式