策略模式又叫算法模式,是指将独立的算法进行封装,并可以动态决定使用哪个算法类来改变对象的行为。
结构图:
[img]http://dl2.iteye.com/upload/attachment/0115/0717/68ce6376-4c59-345c-96c6-e22eeca1b87c.png[/img]
使用场景:
1.有不同的逻辑来处理,可以抽象出独立的算法类,算法类之间公平且唯一。
2.通过策略模式可以松耦合维护算法族。
使用实例:
1. TreeSet和TreeMap,通过构造函数参数Comparable来实现算法的注入。
结构图:
[img]http://dl2.iteye.com/upload/attachment/0115/0717/68ce6376-4c59-345c-96c6-e22eeca1b87c.png[/img]
使用场景:
1.有不同的逻辑来处理,可以抽象出独立的算法类,算法类之间公平且唯一。
2.通过策略模式可以松耦合维护算法族。
使用实例:
1. TreeSet和TreeMap,通过构造函数参数Comparable来实现算法的注入。
本文介绍了策略模式的概念及其使用场景,展示了如何通过策略模式封装独立的算法并动态选择算法类,以改变对象的行为。以TreeSet和TreeMap为例说明了算法注入的具体实现。

被折叠的 条评论
为什么被折叠?



