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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 付剑翊 中级黑马   /  2014-8-28 11:47  /  754 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看完毕老师讲的模板方法设计模式,我又按照自己的思维重新写了一小段,于是就变成了下面这个样子,完全木有想到要用抽象的说。。是不是我的思考方式有问题?设计方面的!
/*
这个类是描述模板设计模式的Demo
在定义功能时,功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分
那么这时就将不确定的部分暴露出去,由该类的子类去完成。
*/
/*
需求:获取一段程序的运行时间
原理:获取程序开始的时间和结束的时间并相减即可
获取时间:System.currentTimeMillis();
分析:
  获取程序开始的时间
  一段未知程序
  获取程序结束的时间
  返回时间差
*/
class GetTime
{
public static final double getTime(Program p){
  //在程序开始运行前获取程序开始时间(单位为毫秒)
  double startTime = System.currentTimeMillis();
  //想要运行的程序
  p.runcode();
  //在程序结束运行后获取程序开始时间(单位为毫秒)
  double stopTime  = System.currentTimeMillis();
  return stopTime - startTime;
}
}
class Program
{
void runcode(){
  for (int i = 0; i<3000;i++ )
  {
   System.out.print("*");
  }
  System.out.println();
}
}
class TemplateDemo
{
public static void main(String[] args)
{
  Program p = new Program();
  System.out.println(GetTime.getTime(p));
}
}

0 个回复

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