当我的注意力被这个吸引时,我正在阅读有关设计模式的内容,特别是有关模板方法的内容。
\n\n阅读解释和具体代码后,我仍然想知道为什么这是“模板方法”设计模式的示例。
\n\n根据 GoF 的说法,这种模式的目的是:
\n\n\n\n\n\xe2\x80\x9c 定义操作中算法的骨架,将一些步骤推迟到子类。模板方法允许子类重新定义算法的某些步骤,而不更改算法\xe2\x80\x99s 结构。\xe2\x80\x9d
\n
并且有两个参与者:
\n\n\n\n\nAbstractClass:
\n
\n - 定义具体子类定义的抽象基元操作,以实现算法的步骤
\n - 实现定义算法骨架的模板方法。模板方法调用原始操作以及 AbstractClass 或其他对象中定义的操作。
\n 具体类:
\n 实现原始操作以执行算法的子类特定步骤。
为什么“JdbcOperations”中的代码被认为是“模板方法”设计模式?
\n\n我发现它对于消除 样板代码非常方便非常方便。但为什么这是一个模板方法而不仅仅是一个漂亮的编码技巧。对我来说,它看起来不像模板方法所具有的任何特征。
\njava algorithm spring design-patterns template-method-pattern