模版设计模式

2018, Apr 19    

模版设计模式

模版模式:封装固定的流程

  • 优点:封装不变部分,扩展可变部分
  • 缺点:子类对父类产生了影响,阅读难度加大
  1. 模板类

    public abstract class AbstractClass {
    	//基本方法
    	protected abstract void doSomething();
    	//基本方法
    	protected abstract void doAnything();
    	//模板方法
    	public void templateMethod(){
    		/*
    		* 调用基本方法,完成相关的逻辑
    		*/
    	this.doAnything();
    	this.doSomething();
    	}
    }
    
  2. 实现类

    public class ConcreteClass1 extends AbstractClass {
    	//实现基本方法
    	protected void doAnything() {
    		//业务逻辑处理
    	}
    	protected void doSomething() {
    		//业务逻辑处理
    	}
    }
       
    

测试函数

public class Client {
public static void main(String[] args) {
	AbstractClass class1 = new ConcreteClass1();
	//调用模板方法
	class1.templateMethod();
	}
}