【java】模板方法设计模式

模板方法:在定义功能时,功能一部分是确认的,另一部分是不确认的或者后续会变化的。这时可以把不确定的部分暴露出去,定义成抽象类或者接口,由子类来完成。

abstract class GetDuring
{
public void Gettime()
{
long start=System.currentTimeMillis();
runcode();
long end=System.currentTimeMillis();
System.out.println(end-start);
} public abstract void runcode();//把未知的代码运行函数定义为抽象方法,让子类实现
} class DoGetDuring extends GetDuring //子类继承了父类,有了Gettime和runcode两个方法,但runcode为抽象方法,子类需要复写此方法才能变为非抽象类
{
public void runcode()
{
for (int i=1;i<=1000;i++)
{
System.out.println(i);
} } } class TmDemo
{
public static void main(String[] args)
{
DoGetDuring c1=new DoGetDuring();
c1.Gettime();//子类直接调用Gettime方法,Gettime方法会调用子类复写的runcode方法。
}
}

  

上一篇:windows下python3.6 32bit 安装django


下一篇:【微信小程序云开发】从陌生到熟悉