一、策略模式 设计原则: 1.把变化的部分封装起来,好让不变的部分不受影响 2.针对接口编程(针对超类型编程),而不是针对实现编程,接口行为单独实现 变化部分做接口,作为成员变量使用,在构造方法或者setter中赋予具体的实现类,每次变化只需要改实现类 3.多用组合,少用继承