0
点赞
收藏
分享

微信扫一扫

模板模式


模板模式:


某些事情的步骤有些是固定的,有些是会放生变化的,那么有时候我们可以为这类事情提供一个模板代码,从而提高效率。



需求:编写一个计算程序运行时间的模板。



模板模式的步骤:


1.先写出解决该类事情其中的一件的解决方案。 


2.分析代码,把会发生的代码抽取出来独立成一个方法。把该方法描述成一个抽象的方法。


3.使用final修饰模板方法,防止别人重写模板方法。


​​/**​​​​* Author:Liu Zhiyong​​​​* Version:Version_1​​​​* Date:2016年6月28日15:15:00​​​​* Desc:模板模式:​​​​     某些事情的步骤有些是固定的,有些是会放生变化的,那么有时候我们可以为这类事情提供一个模板代码,从而提高效率。​​​​​​​​    需求:编写一个计算程序运行时间的模板。​​​​​​​​   模板模式的步骤:​​​​      1.先写出解决该类事情其中的一件的解决方案。 ​​​​     2.分析代码,把会发生的代码抽取出来独立成一个方法。把该方法描述成一个抽象的方法。​​​​     3.使用final修饰模板方法,防止别人重写模板方法。​​​​*/​​​​abstract class MyRuntime​​​​{​​​​  public final void getTime(){ //用final修饰,防止该函数被重写。​​​​   //记录开始的时间​​​​   long startTime = System.currentTimeMillis();​​​​​​​​    code();​​​​​​​​   //记录结束的时间​​​​   long endTime = System.currentTimeMillis();​​​​    //计算出运行时间​​​​   long runTime = endTime - startTime; ​​​​    System.out.println("运行时间是" + runTime + "毫秒");​​​​ }​​​​​​​​ public abstract void code();  //变化的代码​​​​}​​​​​​​​class Demo1 extends MyRuntime​​​​{​​​​  //code方法内部就写要计算运行时间的代码​​​​  public void code(){​​​​   for(int i=0; i<100; i++){​​​​      System.out.println("i=" + i);​​​​   }​​​​ }​​​​​​​​ /*​​​​  public  void getTime(){   ​​​​    System.out.println("哈哈哈。。我覆盖你。。重写你的 方法!!!!");​​​​ }*/​​​​​​​​ public static void main(String[] args) ​​​​ {​​​​   Demo1 d = new Demo1();​​​​​​​​    d.getTime();​​​​​​​​  }​​​​}​​

举报

相关推荐

0 条评论