模板方法模式

准备一个抽象类,将部分逻辑以具体方式形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑,不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。

 

public abstract class AbstractClass{
   public void TemplateMethod(){
      doOperation1();
      doOperation2();
      doOperation3();
   }
   protected abstract void doOperation1();
   protected abstract void doOperation2();
   private final void doOperation3(){
      ......
   }
}

public class A extends AbstractClass{
   public void doOperation1(){
      ......
   }
   public void doOperation2(){
      ......
   }
}

public class B extends AbstractClass{
   public void doOperation1(){
      ......
   }
   public void doOperation2(){
      ......
   }
}

 

你可能感兴趣的:(模板方法)