模板方法

模板方法
当代码完成后可以解决某一类问题,这种方式叫做模板方法设计模式。

什么是模板方法?
在定义功能是,功能的一部分是确定的,但是有一部分是不确定的,而确定的部分在使用不确定的部分,那么这时就将不确定的部分暴露出去,确定部分final由由该子类完成。可以参考现实生活中月饼模板和月饼,月饼模板是确定的,制作月饼的材料是不确定的。
abstract class GetTime
{
	//将获取运行时间抽取为模板方法
	public final void getTime()
	{
		long startTime = System.currentTimeMillis();
		runCode();
		long endTime = System.currentTimeMillis();
		System.out.println("运行时间:"+(endTime-startTime)+"毫秒");
	}
	//运行代码抽取为抽象方法,具体由子类实现
	public abstract void runCode();
}
//需要运行的代码SubTime类继承模板方法类
class SubTime extends GetTime
{
	public void runCode()
	{
		for(int i=0;i<1000;i++)
		{
			System.out.println(i);
		}
	}
}
//模板方法测试类
public class TemplateMethod
{
	public static void main(String[] args)
	{
		SubTime s = new SubTime();
		s.getTime();
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值