java 模板方法模式

在定义功能时,功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分,那么这时就将不确定的部分暴露出去。由子类去完成。

案例:求一段代码的运行时间

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 Test extends GetTime{

    @Override
    public void runCode() {
        for (int i = 0; i < 10000; i++) {
            System.out.println(i);
        }
    }
}

public class Demo{
    public static void main(String[] args) {
        Test test = new Test();
        test.getTime();
    }
}

 

posted @ 2020-03-17 02:32  hongxiao2020  阅读(201)  评论(0)    收藏  举报