码迷,mamicode.com
首页 > 其他好文 > 详细

模板方法模式

时间:2016-07-28 14:17:39      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

1. 模板方法模式的功能

    在于固定算法骨架,而让具体算法实现可扩展

2. 为何不是接口

    通常在 既要约束子类的行为,又要为子类提供公共功能 的时候使用抽象类

3. 变与不变

    变化部分通过接口或者抽象类,不变的部分抽象出来作为公共实现

4. 好莱坞法则

    父类模板调用子类方法,由父类去找子类,而不是子类找父类,这是一种反向控制结构,这种结构的实现原理在于java动态绑定采用的是后期绑定技术

5. 模板写法

    模板方法:定义算法骨架

    具体操作:相对固定且是公共部分的算法,一般设置为private,如果需要子类访问应该设计为protected final 

    具体的AbstractClass操作:辅助公共功能

    原语操作:抽象操作,由子类实现

    钩子操作: 可以被子类拓展的点

    Factory Method: 实例化子类

coding...

 

6. Java回调与模板方法模式

    SpringTemplate就是利用这种方式实现的,其原理利用的是Java的动态绑定技术。

7. Java中典型应用

    集合排序,通过传入Comparator接口实例进行排序

8. 模板方法模式总结

    本质:固定算法骨架

    设计原则:开闭原则和里式替换原则

9. 关联模式

    工厂方法模式

    策略模式

 

模板方法模式

标签:

原文地址:http://www.cnblogs.com/zhaojunyang/p/5714358.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!