抽象类延伸出的模板设计模式
Posted liyue-sqsf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了 抽象类延伸出的模板设计模式相关的知识,希望对你有一定的参考价值。
具体可参考:https://www.cnblogs.com/java-my-life/archive/2012/05/14/2495235.html
模板设计模式的关键:子类可以置换掉父类的可变部分,但是子类却不可以改变模板方法所代表的顶级逻辑
示例:
public abstract class AbstractTemplate { /** * 模板方法 */ public void templateMethod() { // 调用基本方法 abstractMethod(); hookMethod(); concreteMethod(); } /** * 抽象方法(由子类实现) */ protected abstract void abstractMethod(); /** * 基本方法(由子类重写) */ protected void hookMethod() { } /** * 具体方法(抽象类实现) */ private final void concreteMethod() { // 业务相关的代码 } }
以上是关于 抽象类延伸出的模板设计模式的主要内容,如果未能解决你的问题,请参考以下文章