Template - juedaiyuer/researchNote GitHub Wiki

#模板方法#

  • 要有个抽象的模板提供给子类扩展
  • 抽象的模板中有一个具体的模板方法,此模板方法表达了抽象模板的顶级逻辑

示例程序,刷存在感

public abstract class TemplateBase
{
	public void operationBefore()
	{
		System.out.println("操作前...");
	}
	
	public void operationAfter()
	{
		System.out.println("操作后...");
	}

	public abstract void operation();

	//业务逻辑
	public void logicAction()
	{
		operationBefore();
		operation();
		operationAfter();
	}
}

public class Template extends TemplateBase
{
	public void operation()
	{
		System.out.println("TODO...");
	}
}

public class Templatedemo
{
	public static void main(String[] args)
	{
		Template myTest = new Template();
		myTest.logicAction();  //调用业务逻辑
	}
}