模板方法设计模式:
为了提高功能的复用性,可以将功能封装到对象中,只要以后使用找到该对象即可。
以下的这个例子可以用来测试程序运行的时间。
GetTime这个抽象类中里面有一个抽象方法,code();当子类继承getTime这个类的时候
必须要实现这个类中的code方法,让后写自己的code方法,在GetTime这个类中有getTime
方法用来计算时间,所以子类继承了父类之后,只需要写完code方法,然后调用getTime方法就能算出程序运行的时间。
abstract class GetTime{
public final void getTime(){
long start = System.currentTimeMillis();//获取当前时间
code();
long end = System.currentTimeMillis();
}
public abstract void code();
}
class sub extends GetTime{
public void code(){
for(int x=0;x<1000;x++){
System.out.println(“x”);
}
}
}
class TemplateDemo{
public static void main(String[] args){
Sub s = new Sub();
s.getTime();
}
}
当定义功能时,该功能有一部分是确定的,一部分功能不是确定的。这时将不确定的
方法暴露出去,延迟到子类去实现。
这就是模板方法设计模式。
分享到:
相关推荐
Head First 设计模式 (八) 模板方法模式(Template Method pattern) C++实现
Java模板方法设计模式[定义].pdf
设计模式之模板方法模式,这份文档以例子的形式介绍了模板方法模式
第05章 面向对象(下) 10 抽象类应用之模板方法设计模式
设计模式--模板方法模式java例子
设计模式的模板方法模式的例子,希望对大家有用~~~~~~~~
介绍模板方法(TemplateMethod)定义了一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某
模板方法设计模式,内含代码和注释还有模板方法的设计原理
适合20分钟左右讲解的模板方法模式。 自己上课用的。
设计模式模板方法模式PPT学习教案.pptx
设计模式-模板方法模式(讲解及其实现代码)
设计模式C++学习之模板方法模式(Template Method)
在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式...这种类型的设计模式属于行为型模式。 模板方法模式 java demo
本文实例讲述了PHP设计模式之模板方法模式。分享给大家供大家参考,具体如下: 定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 模板...
设计模式之模板方法模式Java实现和UML类设计图
将《Head First 设计模式》(中文版)按章节进行了分割,每章一个文件,方便大家下载。
Java设计模式之模板方法模式.rarJava设计模式之模板方法模式.rar
模板方法模式:定义一个操作中的算法骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。