设计模式12:策略模式

来源:互联网 发布:云 大数据 编辑:程序博客网 时间:2024/05/30 23:13

策略模式:定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。

UML图:


与状态模式的区别:

使用策略模式时,客户端需要知道所选的具体策略是哪一个,而使用状态模式时,客户端无须关心具体状态,环境类的状态会根据用户的操作自动转换。
如果系统中某个类的对象存在多种状态,不同状态下行为有差异,而且这些状态之间可以发生转换时使用状态模式
如果系统中某个类的某一行为存在多种实现方式,而且这些实现方式可以互换时使用策略模式

原创粉丝点击