模板方法模式

定义

在一个方法中定义一个算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

简单点说,就是将相同的算法封装起来,将不同的部分抽象成抽象方法,由子类来具体实现,将相同的部分抽取出来,在父类实现好,这部分代码对子类透明。

实现

进阶

我们还可以在父类定义一些钩子方法,给予默认的实现,子类可以通过重写这些钩子方法决定特殊的方法执行,甚至动态决定模板方法中子方法的具体实现顺序。

点评

模板方法模式是重构代码的常用范式,当多个类中累赘书写了相同实现的时候,可以考虑将多个类抽取出一个父类,相同代码在父类实现。

《设计模式入门与精通》系列文章源码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容