菜鸟硕枫设计模式系列之23 模版方法模式

模版方法模式用来稳定对象的行为,可以由具体实现去完成细节。模版方法模式是一种行为模式。

模版方法模式类图:
                                    菜鸟硕枫设计模式系列之23 模版方法模式


具体代码示例:

模版类:
package templatePattern;

public abstract class Template {

	void templateMethod(){
		doAstep();
		doBstep();
	}
	
	public abstract void doAstep();
	public abstract void doBstep();
	
}


具体实现
package templatePattern;

public class ConcreteMethodA extends Template{

	@Override
	public void doAstep() {
		
		System.out.println("坐公交去火车站");
		
	}

	@Override
	public void doBstep() {
		// TODO Auto-generated method stub
		System.out.println("坐高铁去上海");
	}

}

具体实现2
package templatePattern;

public class ConcreteMethodB extends Template{

	@Override
	public void doAstep() {
		
		System.out.println("坐taxi去汽车站");
		
	}

	@Override
	public void doBstep() {
		// TODO Auto-generated method stub
		System.out.println("坐大巴去上海");
	}

}


测试类:
package templatePattern;

public class TemplateTest {

	public static void main(String[]args){
		Template templateA = new ConcreteMethodA();
		Template templateB = new ConcreteMethodB();
		System.out.println("the way to go to shanghai");
		templateA.templateMethod();
		System.out.println("the other method to go to shanghai");
		templateB.templateMethod();
	}
}


说明: 模板方法模式针对的范围是系列对象,都有着稳定的类似行为,只是行为上有所区别。模板方法模式就是为了提高复用。

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