模板方法模式
来源:互联网 发布:软件测试职业发展规划 编辑:程序博客网 时间:2024/05/28 06:05
首先定义一个抽象算法操作类
/**
*
*/
package TemplateMethod;
/**
* 模板方法模式
*类必须要有注释、报告开发人、开发时间、功能描述
*类变量必须要有注释,说明这个变量的含义
*@author YangQuanqing
*Data:
*
*/
public abstract class AbstractClass {
public void templateMethod()
{
primitiveOperationA();
primitiveOperationB();
}
public abstract void primitiveOperationA();
public abstract void primitiveOperationB();
}
再定义两个具体算法实现类
package TemplateMethod;
/**
*
*类必须要有注释、报告开发人、开发时间、功能描述
*类变量必须要有注释,说明这个变量的含义
*@author YangQuanqing
*Data:
*
*/
public class ConcreteClassA extends AbstractClass {
/* (non-Javadoc)
* @see TemplateMethod.AbstractClass#primitiveOperationA()
*/
@Override
public void primitiveOperationA() {
System.out.println("A----->具体算法A1实现");
}
/* (non-Javadoc)
* @see TemplateMethod.AbstractClass#primitiveOperationB()
*/
@Override
public void primitiveOperationB() {
System.out.println("A------->具体算法A2实现");
}
}
package TemplateMethod;
/**
*
*类必须要有注释、报告开发人、开发时间、功能描述
*类变量必须要有注释,说明这个变量的含义
*@author YangQuanqing
*Data:
*
*/
public class ConcreteClassB extends AbstractClass{
/* (non-Javadoc)
* @see TemplateMethod.AbstractClass#primitiveOperationA()
*/
@Override
public void primitiveOperationA() {
System.out.println("B----->具体算法B1实现");
}
/* (non-Javadoc)
* @see TemplateMethod.AbstractClass#primitiveOperationB()
*/
@Override
public void primitiveOperationB() {
System.out.println("B----->具体算法B2实现");
}
}
第三步,客户端调用
package TemplateMethod;
/**
*
*类必须要有注释、报告开发人、开发时间、功能描述
*类变量必须要有注释,说明这个变量的含义
*@author YangQuanqing
*Data:
*
*/
public class Client {
public static void main(String args[])
{
AbstractClass cca=new ConcreteClassA();
AbstractClass ccb=new ConcreteClassB();
cca.templateMethod();
ccb.templateMethod();
}
}
- 深入浅出模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法设计模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- TemplateMethod模板方法模式
- 模板方法模式
- 模板方法模式
- 模板方法模式
- Kendo Grid bit(布尔型/逻辑型)显示方法
- 【Java】【TIJ】让类的对象个数受控于我们——实现类对象个数的限制
- 单片机实现PT2262解码原理
- 一个Sqrt函数引发的血案
- 写给软件学院的本科生
- 模板方法模式
- 最简单的基于FFmpeg的视频编码器-更新版(YUV编码为HEVC(H.265))
- 百度网盘API的操作--PCS 百度个人云存储 上传 ,下载文件
- Micro SD 卡(TF卡) spi 模式实现方法
- How To Configure Server Side Transparent Application Failover (文档 ID 460982.1)
- jquery 瀑布流 手动
- android音乐播放器开发 SweetMusicPlayer 加载歌曲列表
- 打印设置
- 2014.10.7编写Android代码遇到的问题