/**
* @author jie
* @date 2019/9/10 22:09
* <p>
* 模板设计模式
* 模板设计模式就是定义一个算法骨架,将具体的算法延迟到子类实现
* 优点:
* 使用模板方法模式,在定义算法骨架的同时,可以很灵活的实现具体的算法,满足用户灵活多变的需求
* 缺点:
* 如果算法骨架修改了的话,则需要修改抽象类
*/
public class TemplateTest {
public static void main(String[] args) {
// 获取程序运行时间
System.out.println("new Testa().getScheduleTime() = " + new Testa().getScheduleTime());
}
}
abstract class TimeTemplate {
//获取code运行时间
public long getScheduleTime() {
final long start = System.currentTimeMillis();
// 具体的算法代码
code();
final long end = System.currentTimeMillis();
return end - start;
}
/**
* 由子类实现
*/
abstract void code();
}
/**
* 实现类
*/
class Testa extends TimeTemplate {
@Override
void code() {
// TODO: 2019/9/11 you code
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
模板模式
最新推荐文章于 2024-05-21 00:15:00 发布