定义 : 策略模式定义了一系列的算法,并将每一个算法封装起来,并且使他们可以互相替换.策略模式让算法独立于使用他的客户而独立变化.
使用场景
- 针对同一类型问题的多种处理方式,仅仅是具体行为有差异时.
- 需要安全的封装多种同一类型的操作时
- 出现同一抽象类有多个子类,而又需要使用if-else或者switch-case来选择具体子类时
Android 场景
- 各种时间差值器,类型估值器
View动画绘制
ViewGroup.dispatchDraw
ViewGroup.drawChild()
View.drawAnimation