A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 男人你得有范 中级黑马   /  2014-8-24 19:32  /  848 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.gao;

  2. /*
  3. * 需求:获取一段程序的运行时间
  4. * 原理:结束时间减去开始时间
  5. *
  6. * 获取时间:System.currentTimeMillis()
  7. *
  8. * 这个例子表示的就是模板方法设计模式
  9. *
  10. * 什么叫模板方法?
  11. * 在定义一个功能时有些部分是确定的,有些部分是不确定的,在确定的部分当中还包含不确定的部分,
  12. * 那么就要把不确定的部分暴露出去,让子类去实现这些不确定的部分
  13. * */

  14. abstract class GetTime
  15. {
  16.         public final void getTime()
  17.         {
  18.                 long start = System.currentTimeMillis();
  19.                 runCode();
  20.                 long end = System.currentTimeMillis();
  21.                
  22.                 System.out.println("\n运行时间是" + (end - start) + "毫秒");
  23.         }

  24.         //不确定的部分定义为抽象方法
  25.         public abstract void runCode();

  26. }

  27. class SubTime extends GetTime
  28. {
  29.         @Override
  30.         public void runCode()
  31.         {
  32.                 for (int i = 0; i < 1000; i++)
  33.                 {
  34.                         System.out.print(i);
  35.                 }
  36.         }
  37.        
  38. }

  39. public class TemplateDemo
  40. {
  41.         public static void main(String[] args)
  42.         {
  43.                 SubTime st = new SubTime();
  44.                 st.getTime();
  45.         }
  46. }
复制代码


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马