Spring 、Hibernate等流行框架常见模板方法模式,通过制定模板,把公共算法固定下来,至于谁来实现,模板可以自己提供实现,也可以由子类去实现,还可调用回调机制实现。通过固定算法骨架来约束子类的行为,并在特定的扩展点来让子类功能扩展,从而使程序达到复用性、扩展性。
模板方法模式定义一个操作的算法骨架,而将一些步骤延迟到子类中去实现,可以不改变一个算法的结构即可以重新定义概算法的某些特定步骤。就是定义一个抽象基类,里面的一些方法已经定义好,还有一些虚方法未继承,可以用子类按需要继承该基类然后实现里面没实现的方法。
首先个人觉得这个方法还是比较好用的。但是说白了也就是抽象类最基本的使用,如果抽象类用的多了自然就会这种模式了。这个模式只要会用abstract的都基本自然会用,没必要多看。