模板方法设计模式
来源:互联网 发布:股票精灵软件 编辑:程序博客网 时间:2024/05/16 09:43
模板设计模式
概念:定义一个算法中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。这里需要复用的是算法的结构,也就是步骤,而步骤的实现可以在子类中完成。
使用场合:
1.一次性实现一个算法的不变部分,并且将可变的行为留给子类来完成。
2.各子类公共的行为应该被提取出来并集中到一个公共父类中以避免代码的 重复。首先识别现有代码的不同之处,并且把不同部分分离为新的操作,最 后,用一个调用这些新的操作的模板方法来替代这些不同的代码
3.控制子类的扩展
模板方法模式的组成:
--父类角色:提供模板
--子类角色:为模板提供实现
举例:
Template抽象类中有一个show()方法,show方法中调用内部方法顺序为fun1、fun2、fun3
Children1继承抽象类,并提供fun1、fun2、fun3的实现,但是不需要重写show()方法
备注:模板方法的模板类只能使用抽象类不能使用接口,否则无法定义算法骨架。
0 0
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 【设计模式】模板方法
- 模板方法设计模式
- 设计模式--模板方法
- 模板方法设计模式
- 设计模式-模板方法
- 设计模式-模板方法
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 模板方法设计模式
- 设计模式-模板方法
- 模板方法设计模式
- 【悠然】对虚拟目录 虚拟主机的理解 2014.08.19 20;40;20
- Delphi更新本地时间
- AutoCompleteTextView中的弹出框实现模糊查询
- Fragment上下文菜单示例
- FreeMarker
- 模板方法设计模式
- 面向对象
- MeasureSpec介绍及使用详解
- 【SPOJ】1557 Can you answer these queries II 线段树
- GO语言已经可以写Android项目了,你知道吗?
- 基于XMPP 协议的开发 android
- Android SDK Download List 开发工具下载地址
- VS2008 格式化时候乱码 或者 为全为0
- 让ie支持html5的标签