设计模式学习每日一记(16.模板方法模式)

模板方法模式

A.定义:

定义一个操作的算法的骨架,把某些操作步骤推迟到子类中。模板方法模式使子类在不改变算法结构的情况下,重新定义该算法的某些步骤。

B.定义分析:

"定义一个操作的算法的骨架,把某些操作步骤推迟到子类中。模板方法模式使子类在不改变算法结构的情况下,重新定义该算法的某些步骤。 "算法的骨架指的是算法的关键步骤,我们把算法的关键步骤定义成虚接口。

 "定义一个操作的算法的骨架把某些操作步骤推迟到子类中。模板方法模式使子类在不改变算法结构的情况下,重新定义该算法的某些步骤。 "子类如果重载了这些虚接口,就会使算法的相应步骤被重写,这样子类就有机会(hook)改写算法的某些步骤了。

"定义一个操作的算法的骨架把某些操作步骤推迟到子类中模板方法模式使子类在不改变算法结构的情况下,重新定义该算法的某些步骤。 "这样,算法的步骤没变,但是步骤的处理过程在子类中可被改写拉。

C.问题:

(1)什么时候使用?

模板方法模式使用广泛,理解容易,多态的特性很明显的体现在了模板方法里。当开发框架的时候,经常会用到这个模式。 

原文地址:https://www.cnblogs.com/linucos/p/2230480.html