您的位置:首页 > 其它

面向对象-模板方法模式

2018-03-08 21:39 155 查看
需求:获取一段程序运行的时间。
原理:获取程序开始和结束时间并相减即可。

获取时间:System.currentTimeMillis();

当代码完成优化后,就可以解决这类问题。这种方式:模板方法设计模式。

什么是模板方法?
在定义功能时,功能的一部分是确定的,但是有一部分是不确定,而确定的部分在使用不确定的部分,
那么这时就将不确定的部分暴露出去,由该类的子类去完成。
代码:abstract class Gettime
{
public final void gettime() {//不一定需要防止覆盖
long start = System.currentTimeMillis();
runcode();
long end = System.currentTimeMillis();
System.out.println(end-start);
}

public abstract void runcode();//不一定是抽象类
}

class Subtime extends Gettime
{
public void runcode() {
for (int i = 0; i < 5000; i++) {
System.err.println(i);
}
}
}

class code
{
public static void main(String[] args) {
Subtime g = new Subtime();
g.gettime();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: