设计模式——模板方法模式(TemplateMethod Pattern)
来源:互联网 发布:大韩火花机怎么编程 编辑:程序博客网 时间:2024/05/21 10:23
模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
UML图:
抽象模板:
package com.cnblogs.clarck;/** * 抽象模板,并实现了一个模板方法。 * * @author clarck * */public abstract class AbstractClass { public abstract void primitiveOperation1(); public abstract void primitiveOperation2(); /** * 模板方法,给出了逻辑的骨架,而逻辑的组成是一些相应的抽象操作,将具体的操作推迟到了子类实现。 */ public void TemplateMethod() { primitiveOperation1(); primitiveOperation2(); System.out.println(""); }}实现父类的一个或多个抽象方法:
package com.cnblogs.clarck;/** * 实现父类的一个或多个抽象方法 * * @author clarck * */public class ConcrateClassA extends AbstractClass { @Override public void primitiveOperation1() { System.out.println("具体类A的方法1实现"); } @Override public void primitiveOperation2() { System.out.println("具体类A的方法2实现"); }}
package com.cnblogs.clarck;public class ConcrateClassB extends AbstractClass { @Override public void primitiveOperation1() { System.out.println("具体类B的方法1实现"); } @Override public void primitiveOperation2() { System.out.println("具体类B的方法2实现"); }}测试类:
package com.cnblogs.clarck;/** * 测试类 * * @author clarck * */public class Client { public static void main(String[] args) { AbstractClass abstractClass; abstractClass = new ConcrateClassA(); abstractClass.TemplateMethod(); abstractClass = new ConcrateClassB(); abstractClass.TemplateMethod(); }}
0 0
- 设计模式——模板方法模式(TemplateMethod Pattern)
- 设计模式-模板方法模式(templateMethod pattern)
- 大话设计模式——模板方法(TemplateMethod)
- 设计模式 -- 模板方法模式 TemplateMethod
- C++设计模式-TemplateMethod模板方法模式
- 设计模式之模板方法模式(TemplateMethod)
- C++设计模式-TemplateMethod模板方法模式
- 设计模式 模板方法模式 TemplateMethod
- TemplateMethod模板方法模式
- TemplateMethod模板方法模式
- 模板方法模式(TemplateMethod)
- TemplateMethod 模板方法模式
- "围观"设计模式(18)--行为型之模板方法模式(TemplateMethod Pattern)
- 23设计模式之模板方法(TemplateMethod)
- 23设计模式之模板方法(TemplateMethod)
- 设计模式-行为设计模式:模板方法设计模式 TemplateMethod
- 设计模式总结之TemplateMethod Pattern(模版方法模式)
- 设计模式之七、模板方法模式TemplateMethod
- android客户端多线程下载案例(实现断点续传,包括客户端服务端,还有注释)
- Eclipse开发Android时报错Unable to execute dex: Multiple dex files define
- poj 3636 Dilworth定理(嵌套方形娃娃) Dilworth定理详细讲解
- 使用NDK r10构建Cocosd-x v3.2时编译和链接错误的解决办法
- iOS开发 ---- Swift基础语法。
- 设计模式——模板方法模式(TemplateMethod Pattern)
- IDA调试dex代码初体验
- 设计模式:桥接模式
- 如何再linux下安装uci (unified configguration interface)
- 求矩形的周长和面积【Java】
- Storm源码分析<转>
- myproject/gen already exists but is not a source folder. Convert to a source folder or rename it.
- 不确定个数的数组参数的写法.
- [USACO 2014 Jan Silver]Bessie Slows Down