`
zhangwei_david
  • 浏览: 474735 次
  • 性别: 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例子

    模板方法模式是设计模式中行为型模式的一种,它在软件工程中扮演着非常重要的角色,尤其是在Java编程中。模板方法模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。它允许子类不改变一个算法的结构即可重...

    java设计模式-模板模式

    3. **模板方法(Template Method)**:这是在抽象类中定义的方法,它调用了一个或多个钩子方法(即抽象方法或可选的具体方法)。模板方法执行整体算法的顺序,并且通常在最后调用钩子方法以完成算法的定制部分。 4....

    JAVA设计模式-chm版

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

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

    ### 设计模式之模板方法模式解析 #### 一、引言 在软件开发过程中,我们经常面临这样的场景:有一些步骤是固定的,而某些步骤则可能因具体实现而异。为了解决这类问题,设计模式中引入了一种叫做“模板方法模式”的...

    template-method-demo 模板方法示例

    在"template-method-demo"这个示例中,我们可以预见到它将展示如何在Java中应用模板方法模式。这个压缩包可能包含以下内容: 1. 一个抽象类(例如:`AbstractClass`),它定义了模板方法。在这个类中,可能会有一个...

    设计模式-模板方法模式(讲解及其实现代码)

    模板方法模式是一种行为设计模式,它允许在定义行为框架的同时,延迟部分具体步骤到子类中实现。这种模式主要用于在父类中定义算法的骨架,而将一些步骤的实现细节留给子类去完成,从而使得不同的子类可以重用相同的...

    JAVA设计模式---100%推荐

    行为型模式则关注对象之间的通信和职责分配,如观察者(Observer)、模板方法(Template Method)和策略(Strategy)模式。 这篇文章可能涵盖了以上各种模式的详细解释,包括它们的目的、工作原理、优缺点以及如何...

    JAVA设计模式--入门

    10. 模板方法模式(Template Method):定义一个操作中的算法骨架,而将一些步骤延迟到子类中。 11. 访问者模式(Visitor):表示对一个对象结构进行操作的算法。 学习Java设计模式不仅能提升编程技能,还能帮助...

    java设计模式----源代码

    3. **模板方法模式(Template Method)**:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。`Template`目录下的代码可能展示了如何定义基本...

    《Java设计模式》课后答案-刘伟.rar

    行为型设计模式如策略(Strategy)、模板方法(Template Method)、观察者(Observer)、命令(Command)、迭代器(Iterator)、访问者(Visitor)、状态(State)、职责链(Chain of Responsibility)、解释器...

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

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

    JAVA design pattern-java设计模式

    Java设计模式是软件工程中的一种最佳实践,它提供了一种在特定情况下解决常见问题的标准化方法。设计模式不是具体的代码或库,而是一种通用解决方案的描述,可以应用于各种编程语言,包括Java。在这个名为"JAVA ...

    设计模式-Java语言中的应用(pdf)

    《设计模式——Java语言中的应用》是一本专为Java开发者深入理解面向对象设计而编写的经典书籍。设计模式是软件工程领域中经过实践验证的、解决常见问题的有效方案,它们代表了在特定上下文中,针对特定问题的最优...

    Java 中的设计模式 - jdon

    模板方法模式(Template Method)定义操作中的算法骨架,而将一些步骤延迟到子类中;还有职责链模式(Chain of Responsibility),使得多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合。 4. ...

    Java设计模式26模板方法模式.pdf

    ### Java设计模式26模板方法模式 #### 模式动机 模板方法模式是基于继承机制的一种代码复用技术,它允许子类通过扩展的方式重写父类中的抽象方法,以此来实现不同子类间的差异性行为。在软件工程中,我们经常遇到...

    设计模式-可复用面向对象软件的基础,JAVA设计模式

    模板方法模式(Template Method)定义了一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 在"设计模式-可复用面向对象软件的基础"这个主题中,...

    《java设计模式》课后习题模拟试题解答——刘伟.zip

    3. **行为型模式**:包括策略(Strategy)、模板方法(Template Method)、观察者(Observer)、迭代器(Iterator)、访问者(Visitor)、责任链(Chain of Responsibility)、命令(Command)、备忘录(Memento)、...

    java-design-patterns-master_JAVAdesignpattens_java_design_

    16. **模板方法模式(Template Method Pattern)**:在抽象类中定义了一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 17. **状态模式(State...

    设计模式--java版.rar

    本资源“设计模式--java版.rar”提供了一种深入理解和应用Java设计模式的方式。 在Java开发中,设计模式主要分为三大类:创建型模式、结构型模式和行为型模式。创建型模式如单例(Singleton)、工厂方法(Factory ...

Global site tag (gtag.js) - Google Analytics