定义

模板方法模式在一个方法中定义一个算法的骨架,而将一些步骤的实现延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中某些步骤的具体实现。

比如试卷上的题目可以组合成一个模板,印成试卷,具体到每一题的作答答案可以交给学生进行作答。

设计模式之模板方法模式(java)

实现代码

public abstract class AbstractClass {
	public abstract void PrimitiveOperation1();
	public abstract void PrimitiveOperation2();
	
	public void TemplateMethod() {
		PrimitiveOperation1();
		PrimitiveOperation2();
	}

}


public class ConcreteClassA extends AbstractClass {

	@Override
	public void PrimitiveOperation1() {
		System.out.println("具体类A的操作1");
		
	}

	@Override
	public void PrimitiveOperation2() {
		System.out.println("具体类A的操作2");
		
	}

}

class ConcreteClassB extends AbstractClass {

	@Override
	public void PrimitiveOperation1() {
		System.out.println("具体类B的操作1");
		
	}

	@Override
	public void PrimitiveOperation2() {
		System.out.println("具体类B的操作2");
		
	}

}



public class CilentTest {
	public static void main(String[] args) {
		AbstractClass c=new ConcreteClassA();
		c.TemplateMethod();
		AbstractClass c1=new ConcreteClassA();
		c.TemplateMethod();
	}
	

}

 

相关文章: