`
zhangwei_david
  • 浏览: 468759 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java 设计模式-模板方法模式(Template Method)

 
阅读更多

    模板方法模式(Template Method Pattern)的定义是:定义一个操作中的算法骨架,将一些易变的步骤延迟到子类中,使得子类在不改变算法结构即可重定义该算法的默写特定步骤。

     也就是说将一下不变的方法抽象到父类中,将一些业务相关的方法延迟到子类中。

有一个业务需要检查参数是否合法,结果是否符合预期,以及一些具体业务相关的检查。

/**
 *
 * @author zhangwei_david
 * @version $Id: AbstractPopulator.java, v 0.1 2014年10月21日 下午10:37:02 zhangwei_david Exp $
 */
public abstract class AbstractCheckMamanger {

    public void checkBiz() throws Exception {
        ckeckParam();
        doBizCheck();
        checkResult();
    }

    /**
     *
     */
    private void checkResult() {
        System.out.println("结果检查");
    }

    /**
     *
     */
    private void ckeckParam() {
        System.out.println("参数检查");
    }

    /**
     *
     */
    protected abstract void doBizCheck();

}

 

/**
 *
 * @author zhangwei_david
 * @version $Id: MyPopulator.java, v 0.1 2014年10月21日 下午10:39:50 zhangwei_david Exp $
 */
public class MyPopulator extends AbstractCheckMamanger {

    /**
     * @see com.cathy.demo.pattern.templateMethod.AbstractCheckMamanger#doBizCheck()
     */
    @Override
    protected void doBizCheck() {
        System.out.println("子业务检查");
    }

}

 

/**
 *
 * @author zhangwei_david
 * @version $Id: TestClient.java, v 0.1 2014年10月21日 下午10:40:50 zhangwei_david Exp $
 */
public class TestClient {

    /**
     *
     * @param args
     * @throws Exception
     */
    public static void main(String[] args) throws Exception {

        AbstractCheckMamanger ap = new MyPopulator();
        ap.checkBiz();
    }

}

 

参数检查
子业务检查
结果检查

 

1
0
分享到:
评论

相关推荐

    java版本二十三种设计模式.zip

    - 模板方法模式(Template Method) - 策略模式(Strategy) - 责任链模式(Chain of Responsibility) - 中介者模式(Mediator) - 访问者模式(Visitor) - 命令模式(Command) - 解释器模式(Interpreter) - 迭代器...

    模板方法模式(TemplateMethod)原理图

    模板方法模式是一种行为设计模式,它在一个方法中定义算法的骨架,将一些步骤延迟到子类中实现。 具体来说,模板方法模式的关键特点包括: 抽象类:在抽象类中定义一个模板方法,该方法给出了算法的框架。 具体...

    JAVA设计模式(模板方法模式)—视频

    模版方法模式(Template Method) 准备一个抽象类,将部分逻辑以具体方法的形式实现,然后申明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现...

    [Java设计模式(第2版)(Design.Patterns.in.Java).John.Metsker

    第21章 模板方法(template method)模式 182 第22章 状态(state)模式 193 第23章 策略(strategy)模式 204 第24章 命令(command)模式 213 第25章 解释器(interpreter)模式 221 第26章 扩展型模式介绍 236 第27章 装饰...

    Java高手真经 - Java Web系统设计与架构 源代码(一)设计模式

    pattern/src/behavior/templatemethod //13.2模板方法模式 pattern/src/behavior/observer //13.3观察者模式 pattern/src/behavior/iterator //13.4迭代子模式 pattern/src/behavior/chainofresponsibility//13.5...

    Leitura-Boleto-Template-Method:使用设计模式模板方法使用Java读取CSV文件-大学作业

    Leitura-Boleto-模板方法使用设计模式模板方法使用Java读取CSV文件-大学作业

    java设计模式教程+源代码

    AbstractFactory ( 抽象工厂 ) FactoryMethod ( 工厂方法 ) Singleton ( 单态模式 ) Builder ( 建造者模式 ) Prototype ( 原型模式 ) ...TemplateMethod ( 模板方法 ) Visitor ( 访问者模式 )

    研磨设计模式-part2

    第16章 模板方法模式(Template Method) 第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式...

    研磨设计模式-part4

    第16章 模板方法模式(Template Method) 第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式...

    研磨设计模式-part3

    第16章 模板方法模式(Template Method) 第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式...

    Java面试 java设计模式整理 单例、工厂、策略等 面试使用,学习使用

    14、模板方法模式(Template Method) 13 15、观察者模式(Observer) 14 16、迭代子模式(Iterator) 16 17、责任链模式(Chain of Responsibility) 18 18、命令模式(Command) 19 19、备忘录模式(Memento) 21 ...

    Java24种设计模式,Java24种设计模式,24种设计模式,学会了这24种设计模式,可以打遍天下无敌手,设计模式非常重要

    9、模板方法模式TEMPLATE METHOD PATTERN 10、建造者模式BUILDER PATTERN 11、桥梁模式BRIDGE PATTERN 12、命令模式COMMAND PATTERN 13、装饰模式DECORATOR PATTERN 14、迭代器模式ITERATOR PATTERN 15、组合...

    design-pattern-java.pdf

    算法的封装与切换——策略模式(四) 模板方法模式-Template Method Pattern 模板方法模式深度解析(一) 模板方法模式深度解析(二) 模板方法模式深度解析(三) 访问者模式-Visitor Pattern 操作复杂对象结构——...

    Java设计模式,并加上个人理解

    8. 模板方法模式 (Template Pattern) 9. 建造者模式 (Builder Pattern) 10. 原型模式 (Prototype Pattern) 11. 组合模式 (Composite Pattern) 12. 装饰者模式 (Decorator Pattern) 13. 访问者模式 ...

    JAVA设计模式.rar

    模板方法模式【TEMPLATE METHOD PATTERN】  建造者模式【BUILDER PATTERN】 桥梁模式【BRIDGE PATTERN】  命令模式【COMMAND PATTERN】  装饰模式【DECORATOR PATTERN】 迭代器模式【ITERATOR ...

    JAVA经典设计模式大全

    5.10 TEMPLATE METHOD(模板方法) —类行为型模式 214 5.11 VISITOR(访问者)—对象行为型 模式 218 5.12 行为模式的讨论 228 5.12 1 封装变化 228 5.12.2 对象作为参数 228 5.12.3 通信应该被封装还是被...

    设计模式_java语言中的应用

    主要内容有:Iterator-迭代器、Adapter(适配器)、Template Method(模板方法)、Factory Method(工厂方法)、Abstract Factory(抽象工厂)等。

    设计模式文档

    5.10 TEMPLATE METHOD(模板方法) —类行为型模式 214 5.11 VISITOR(访问者)—对象行为型 模式 218 5.12 行为模式的讨论 228 5.12 1 封装变化 228 5.12.2 对象作为参数 228 5.12.3 通信应该被封装还是被分布 229 ...

    [源代码] 《易学 设计模式》 随书源代码

    第16章 按部就班:模板方法模式 (TemplateMethod) 第17章 风吹草动:观察者模式 (Observer) 第18章 变化多端:状态模式 (State) 第19章 明修栈道,暗度陈仓:策略模式 (Strategy) 第20章 循序渐进:职责链模式 ...

    java之23种设计模式

    设计模式之Java实现源码,其中包含三大类,23种,分别为创建型 1. Factory Method(工厂方法) 2. Abstract Factory(抽象工厂) 3. Builder(建造者) 4. Prototype(原型) 5. Singleton(单例) 结构型 6. ...

Global site tag (gtag.js) - Google Analytics