设计模式之模板方法
来源:互联网 发布:类的定义 c语言 编辑:程序博客网 时间:2024/05/21 06:36
/*模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的
* 结构即可重新定义该算法的某些特定步骤.
*
* 我的个人理解就是把一些共同的行为搬到父类,把一些可变的不一样的留到子类中去实现.
*
* 注:模板方法是通过巴布遍的行为搬移到超类,去除子类中的重复代码来体现他的优势.
* 模板方法就是提供了一个很好的代码复用的平台.
* 当不变的和可变的行为在方法的子类实现中混合在一起时候,不变的行为就会在子类中重复出现,我们通过模板方法把这些行为
* 搬移到单一的地方,这样就帮助子类摆脱重复的不变行为的纠缠.
*
* 结构即可重新定义该算法的某些特定步骤.
*
* 我的个人理解就是把一些共同的行为搬到父类,把一些可变的不一样的留到子类中去实现.
*
* 注:模板方法是通过巴布遍的行为搬移到超类,去除子类中的重复代码来体现他的优势.
* 模板方法就是提供了一个很好的代码复用的平台.
* 当不变的和可变的行为在方法的子类实现中混合在一起时候,不变的行为就会在子类中重复出现,我们通过模板方法把这些行为
* 搬移到单一的地方,这样就帮助子类摆脱重复的不变行为的纠缠.
*
* */
package com.zwy;public class TemplateMethod {/** * main(这里用一句话描述这个方法的作用) * (这里描述这个方法适用条件 – 可选) * @param args *void * @exception * @since 1.0.0 */public static void main(String[] args) {BaseTemplate base = new ConcretateTemplate();base.run();}}class BaseTemplate {public void run1(){System.out.println(this.getClass().getName() +"执行run1");};public void run2(){System.out.println(this.getClass().getName() + "执行run2");}public void run(){System.out.println("开始执行模板开头");this.run1();System.out.println("模板执行一般了");this.run2();System.out.println("模板执行结束了");}}class ConcretateTemplate extends BaseTemplate {public void run1(){System.out.println("ConcretateTemplate" +"执行run1");};public void run2(){System.out.println("ConcretateTemplate" + "执行run2");}}
0 0
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法
- 设计模式之模板方法模式模板方法模式
- Java设计模式之模板方法模式
- 算法练习 之0918
- 顺序循环队列的基本操作
- 26条深度学习经验
- 对于Oracle中分页排序查询语句执行效率的比较分析
- 使用GCD
- 设计模式之模板方法
- 以销售角度看Android学习
- UVa 10443 - Rock
- jQuery
- gradle--第十一章 使用Gradle命令行2
- arm-linux-ld 的使用
- 如何在局域网访问Tomcat项目
- H index II
- 通过VB写Get_Next的代码 KMP的next求法