将可变的地方封装起来
1.综述:
1.1 是什么?
- 策略模式(Strategy),又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于使用算法的客户.
- 更为形象地理解就是诸葛亮的锦囊妙计,什么时候用以及谁用都是可变的,即可以动态地改变对象的动作行为。
1.2 类图
1.3 应用场景
- Context内部维护一个ConcreteStrategy实例,负责动态地改变调用哪个算法,实现对抽象策略接口
- Strategy可以由接口或抽象类实现
- ConcreteStrategy把不同的算法封装在每个具体的类内部
2.实现
2.1 策略类
- Strategy.java ,用于实现抽象算法接口
public abstract class Strategy{
//抽象算法接口
public