一. 应用背景
二. 优, 缺点
优点:
1, 可以动态的改变对象的行为
缺点:
1, 客户端必须知道所有的策略类, 并自行决定使用哪一个策略类
2, 策略模式将造成产生很多策略类
三. 组成
1. 运行环境类: Strategy
这个策略模式运行的环境, 其实也就是在哪里使用
2. 应用场景类: Person
这个就是客户端访问的类, 也就是该类的对象所持有的策略
3 具体策略类: Car
具体实现策略类
4.. 抽象策略类: CarFunction
根据不同的需求, 产生不同的策略或算法的接口
四. 代码实现
来源: http://www.bubuko.com/infodetail-3103100.html