模版设计模式
2016-08-27 10:31
141 查看
上一篇是单例设计模式,接下来继续模版设计模式
模版设计模式:在实现一个功能时,功能的一部分是确定的,另一部分是不确定的,确定的部分还会用到不确定的部分,那么就把不确定的部分暴露出去,让子类去完成
下面我们用一个例子来看看模版设计模式
计算一个程序的运行时间:
获取程序运行的开始和结束时间是确定的,然后两个时间相减
被计算运行时间的程序是不确定的
abstract class MyTool
{
public final void getTime()
{
//获取开始时间
long start = System.currentTimeMillis();
function();
//获取结束时间
long end = System.currentTimeMillis();
//两个时间相减
System.out.println("程序运行时间为:"+(end-start)+"毫秒");
}
public abstract void function();
}
class TestTool extends MyTool
{
public void function()
{
for(int i=1;i<=3000;i++)
{
System.out.println("i="+i);
}
}
}
class Demo
{
public static void main(String[] args)
{
TestTool tt = new TestTool();
tt.getTime();
}
}
模版设计模式:在实现一个功能时,功能的一部分是确定的,另一部分是不确定的,确定的部分还会用到不确定的部分,那么就把不确定的部分暴露出去,让子类去完成
下面我们用一个例子来看看模版设计模式
计算一个程序的运行时间:
获取程序运行的开始和结束时间是确定的,然后两个时间相减
被计算运行时间的程序是不确定的
abstract class MyTool
{
public final void getTime()
{
//获取开始时间
long start = System.currentTimeMillis();
function();
//获取结束时间
long end = System.currentTimeMillis();
//两个时间相减
System.out.println("程序运行时间为:"+(end-start)+"毫秒");
}
public abstract void function();
}
class TestTool extends MyTool
{
public void function()
{
for(int i=1;i<=3000;i++)
{
System.out.println("i="+i);
}
}
}
class Demo
{
public static void main(String[] args)
{
TestTool tt = new TestTool();
tt.getTime();
}
}
相关文章推荐
- 23种设计模式(6):模版方法模式
- java设计模式----模版模式+内部类+设计时间事件处理框架
- 设计模式之禅-模版模式
- 设计模式之模版方法模式
- java 设计模式之三-模版模式
- .NET设计模式-模版方法(Template Method)
- .NET设计模式(16):模版方法(Template Method)
- 设计模式--模版方法模式(Templet Method Pattern)
- 23种设计模式(6):模版方法模式
- 设计模式(三)之模版方法模式(Template method Pattern)
- .NET设计模式(16):模版方法(Template Method)
- 设计模式--模版方法(TemplateMethod)
- 设计模式之模版方法模式
- PHP类实例教程(十八):设计模式之模版模式
- 设计模式与泡mm的关系之template method模版方法模式及再思考
- 设计模式之template method模版方法模式
- 设计模式--模版方法
- 设计模式系列——模版方法模式
- 设计模式——模版模式
- .NET设计模式(16):模版方法(Template Method)