java 相关

  想着学习学习java的模式了,看到不错得帖子
父类定义运行的顺序流程
 public abstract class TemplatePattern {

	//模板方法
	public final void templateMethod(){
		
		method1();
		method2();
		method3();
	}
	private void method1(){
		System.out.println("父类实现业务逻辑");
	}
	public void method2(){
		System.out.println("父类默认实现,子类可覆盖");
	}
	protected abstract void method3();//子类负责实现业务逻辑
}

子类实现,可变的方法
public class TemplatePatternImpl extends TemplatePattern {

	@Override
	protected void method3() {
		System.out.println("method3()在子类TemplatePatternImpl中实现了!!");

	}

}

便可实现流程不变,方法内容可有子类实现变化
TemplatePattern t1 = new TemplatePatternImpl();
t1.templateMethod();

参考 https://my.oschina.net/solarxie/blog/510815

猜你喜欢

转载自1013566157.iteye.com/blog/2338374