模板方法模式
来源:互联网 发布:mac桌面文件夹隐藏 编辑:程序博客网 时间:2024/06/15 18:19
定义
定义一个操作中算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
通用类图
通用代码
抽象类
package template.common;/** * Created by xugebing on 2017/3/15. */public abstract class AbstractClass { //基本方法 protected abstract void doSomething(); //基本方法 protected abstract void doAnything(); //模板方法 public void templateMethod(){ //调用基本方法,完成相关逻辑 this.doAnything(); this.doSomething(); }}
实现类1
package template.common;/** * Created by xugebing on 2017/3/15. */public class ConcreteClass1 extends AbstractClass{ //实现基本方法 @Override protected void doSomething() { //业务逻辑处理 } @Override protected void doAnything() { //业务逻辑处理 }}
实现类2
package template.common;/** * Created by xugebing on 2017/3/15. */public class ConcreteClass2 extends AbstractClass{ //实现基本方法 @Override protected void doSomething() { //业务逻辑处理 } @Override protected void doAnything() { //业务逻辑处理 }}
归纳
AbstractClass叫做抽象模板,它的方法分为两类:
- 基本方法
是由子类实现的方法,并且在模板方法中被调用
- 模板方法
可以有一个或几个,一般是一个具体方法,也就是一个框架,实现对基本方法的调度,完成固定的逻辑。
阅读全文
0 0
- 深入浅出模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法设计模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- TemplateMethod模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 【MIC高性能计算编程指南阅读笔记】 第一章
- 设计模式 观察者模式 以微信公众服务为例
- aurelia中文开发手记(一):写在前面
- getRequestDispatcher()与sendRedirect()的区别
- Java 堆排序
- 模板方法模式
- PHP 底层分析
- 如何应对在将论文提交至IEEE PDF Express时候遇到的font embedding问题
- AOP and Instrumentation
- Sublime Text3 配置备忘
- PCIe资料汇总
- 第8章 过渡
- Tensorflow基础知识总结(1)
- LeetCode Weekly Contest 34解题思路