java(二十二)【面向对象】模版方法模式

什么是模板方法?

在定义功能时,功能的一部分是确定的,但是有一部分是不确定,而确定的部分在使用不确定的部分,那么这时就将不确定的部分暴露出去,由该类的子类去完成

示例:

需求:获取一段程序运行的时间

原理:获取程序开始和结束的时间并相减即可

获取时间:System.currentTimeMillis();

 1 abstract class  GetTime {  //抽象方法一定存在抽象类中
 2     public final void gettime(){     //被fanal修饰的类不可以被继承
 3         long start=System.currentTimeMillis();
 4         run();
 5         long end=System.currentTimeMillis();
 6         System.out.println("haomiao:"+(end-start));
 7     }
 8     public abstract void  run();  //定义抽象类,暴露给子类覆盖
 9     }
10 
11  class     Fuxie extends GetTime
12  {
13      public void  run() {
14             for(int i=0;i<1000;i++)
15             {
16                 if (i<999) {
17                     System.out.print(i+",");
18                 }
19                 else {
20                     System.out.println(i);
21                 }
22             }
23         }
24  }
25 public class Single {
26     public static void main(String[] args) {
27         Fuxie gt=new Fuxie();
28         gt.gettime();
29     }
30 }

 

运行结果:

  

 

posted @ 2015-09-08 20:52  花花妹子。  阅读(119)  评论(0)    收藏  举报