模式动机:
完成一项任务,往往可以有多种不同的方式,每一种方式称为一个策略,我们可以根据环境或者条件的不同选择不同的策略来完成该项任务。
模式定义:
策略模式(Strategy Pattern):定义一系列算法,将每一个算法封装起来,并让它们可以相互替换。策略模式让算法独立于使用它的客户而变化。策略模式使这些算法在客户端调用它们的时候能够互不影响地变化。
模式结构:
环境对象(Context):该类中实现了对抽象策略中定义的接口或者抽象类的引用
抽象策略对象(Strategy):定义所有支持的算法的公共接口抽象类.
具体策略对象(ConcreteStrategy): 封装了具体的算法或行为,继承于Strategy
未完待续。。。