模板方法设计模式
模板方法设计模式
当功能内部一部分实现是确定的一部分实现是不确定的。这时可以把不确定的部分暴露出去,让子类去实现 。
换句话说,在软件开发中实现一个算法时,整体步骤很固定、通用,这些步骤已经在父类中写好了。但是某些部分易变,易变部分可以抽象出来,供不同子类实现。这就是一种模板模式。
创建
abstract class Template{
public final void getTime(){
long start = System.currentTimeMillis();
code();
long end = System.currentTimeMillis();
System.out.println("执行时间是:" + (end - start));
}
public abstract void code();
}
class SubTemplate extends Temlate{
public void code(){
for(int i = 0; i < 10000; i++){
System.out.println(i);
}
}
}
应用场景
- 数据库访问的封装
- Junit 单元测试
- JavaWeb 的 Servlet 中关于 doGet/doPost 方法调用
- Hibernate 中模板程序
- Spring 中 JDBCTemlate 、 HibernateTemplate 等

浙公网安备 33010602011771号