模板模式
模板模式
Java设计模式—模板方法模式
模板设计模式,定义一个抽象类,其中有抽象方法和具体方法,具体方法调用抽象方法。抽象方法可以有所继承的子类进行自定义,这就是模板设计模式。
不同的子类根据子类的不同定义,执行不同的算法。(也可以核心算法固定,中间可以定义一些自定义算法,例如增减排序)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| package Java_test;
public class TemplatePattern { public static void main(String[] args) { ConcreteClass concreteClass = new ConcreteClass(); concreteClass.doTemplate(); TemplateAbstract template = new TemplateAbstract(){ @Override protected void doSomething() { System.out.println("doSomething"); } @Override protected void customFunction() { System.out.println("customFunction"); } }; template.doTemplate(); } } abstract class TemplateAbstract{ protected abstract void doSomething(); protected abstract void customFunction(); protected void doTemplate(){ doSomething(); customFunction(); } } class ConcreteClass extends TemplateAbstract{ @Override protected void doSomething() { System.out.println("自定义doSomthing"); } @Override protected void customFunction() { System.out.println("自定义customFunction"); } }
|