---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! -------------------------
模板方法模式:
什么是模板方法模式?在定义功能的时候,功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分,那么这是就将不确定的部分暴露出去,由该类的子类去完成。
例子:获取一段程序的运行所用的时间
获取程序开始和结束的时间并相减。获取时间:System.currentTimeMillis();
package biji.sj;
abstract class Time {
public final void getTime(){//将方法变成final的,因为不想把这个方法暴露出去。子类不需要继承这个方法。
long start=System.currentTimeMillis();//程序开始计时
aa();
long end=System.currentTimeMillis();//程序结束计时
System.out.println("一共"+(end-start));
}
public abstract void aa();//aa方法会被子类重写,这个方法是确定的,但是方法的内容不确定。
}
package biji.sj;
public class Time1 extends Time {
public void aa(){
for(int x=0;x<100;x++){
System.out.println(x);
}//打印1-100
}
}
package biji.sj;
public class Duixiang {
public static void main(String[] args) {
new Time1().getTime();
}
}
---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! -------------------------