黑马程序员技术交流社区

标题: 模板方法设计模式 [打印本页]

作者: 高泳    时间: 2014-9-24 15:30
标题: 模板方法设计模式
需求:获取一段程序运行的时间。
原理:获取程序开始和结束的时间并相减即可。

获取时间:System.currentTimeMillis();

当代码完成优化后,就可以解决这类问题。
这种方式就是模板方法设计模式。
什么是模板方法呢?
在定义功能时,功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分,
那么这时就将不确定的部分暴露出去,由该类的子类去完成。
  1. abstract class GetTime
  2. {
  3.         public final void getTime()
  4.         {
  5.                 long start = System.currentTimeMillis();

  6.                 runcode();

  7.                 long end = System.currentTimeMillis();
  8.                 System.out.println("\n运行时间:"+ (end-start) +"ms");
  9.         }

  10.         public abstract void runcode();
  11. }

  12. class SubTime extends GetTime
  13. {
  14.         public void runcode()
  15.         {
  16.                 for(int x = 0; x<1000; x++)
  17.                 {
  18.                         System.out.print(x);
  19.                 }
  20.         }       
  21. }

  22. class TemplateDemo
  23. {
  24.         public static void main(String[] args)
  25.         {
  26.                 SubTime gt = new SubTime();
  27.                 gt.getTime();
  28.         }
  29. }
复制代码





作者: wisderm    时间: 2014-9-24 15:56
感谢分享,加油!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2