JAVA设计模式【模板模式】

Template模板模式定义: 定义一个操作中算法的骨架,将一些步骤的执行延迟到其子类中.
使用Java的抽象类时,就经常会使用到Template模式,因此Template模式使用很普遍.而且很容易理解和使用。

package com.zzl.template;

public abstract class Template {
	public abstract void doSomtThing();
	
	
	public final long test(int count){
		
		if(count <= 0){
			return 0;
		}
		
		long startTime = System.currentTimeMillis();
		System.out.println("开始时间:"+startTime);
		
		for(int i = 0;i < count;i++){
			doSomtThing();
		}
		long endTime = System.currentTimeMillis();
		System.out.println("结束时间:"+endTime);
		
		
		return endTime - startTime ;
	}
}



package com.zzl.template;

public class MyTemplate extends Template{

	@Override
	public void doSomtThing() {
		
		long sum = 0;
		for(int i = 0;i < 99999999 ; i++){
			sum += i;
		}
		

	}
}



package com.zzl.template;

public class TestTemplate {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		Template mTemplate = new MyTemplate();
		
		
		System.out.println("用时:"+mTemplate.test(1));

	}

}

也许你以前还疑惑抽象类有什么用,现在你应该彻底明白了吧? 至于这样做的好处,很显然啊,扩展性强,以后Benchmark内容变化,我只要再做一个继承子类就可以,不必修改其他应用代码.

你可能感兴趣的:(java,设计模式)