简单理解抽象类的模板方法设计模式

模板设计模式简单来说就是类似于ppt模板,文章模板等等除了自定义的内容,其他可以直接拿来用的一个东西。

简单例子:计算一个方法的执行时间

public class Test{
  public static void main(String[] args){
    MyCode m = new MyCode();
    long time = m.getTime();
    System.out.println("计算1~1000000的和需要的时间是: " +  time + "秒");
  }
}

abstract class TestTemplate{

  //计算执行方法需要的时间
  public final long getTime(){

    //获取开始时间
    long startTime = System.currentTimeMillis();

    //执行方法
    doWork();

    //获取结束时间
    long endTime = System.currentTimeMillis();

    //计算出需要的时间,并返回
    return endTime - startTime;
  }

  protected abstract void doWork();
}

class MyCode extends TestTemplate{


  @Override
  protected void doWork(){
    int sum = 0;
    for (int i = 1; i <= 1000000 ; i++) {
      sum += i;
  }
    System.out.println(sum);
  }
}

posted @ 2020-03-16 16:14  dirsoen  阅读(162)  评论(0)    收藏  举报