美文网首页设计模式
设计模式---策略模式

设计模式---策略模式

作者: 阿鸽 | 来源:发表于2018-05-29 20:37 被阅读0次

一、基础概念

1、策略模式:它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。

2、适用场景:策略模式就是用来封装算法的。多个类只区别在表现行为不同,在运行时动态选择具体要执行的行为。需要在不同情况下使用不同的策略,或者策略在未来还有其他方式实现。对客户隐藏具体策略的实现细节,彼此完全独立。

3、UML结构

Context:环境上下文,用一个ConcreteStrategy来配置,维护一个对Strategy对象的引用,客户端调用该类的方法

Strategy:抽象策略类,定义所有支持的算法的公共接口

ConcreteStrategy:具体策略类,封装了具体的算法或行为,继承于Strategy

4、代码描述

抽象策略类:CashSuper.java

具体策略类:NormalCash.java

具体策略类:RebateCash.java

上下文类:CashContext.java

相关文章

网友评论

    本文标题:设计模式---策略模式

    本文链接:https://www.haomeiwen.com/subject/vlaajftx.html