策略模式 定义与类型 定义: 定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户。 类型 行为型 适用场景: 系统有很多类,而它们的区别仅仅在于他们的行为不同一个系统需要动态的在几种算法中选择一种 优点 开闭原则避免使用多重条件转移语句提高算法的保密性和安全性 缺点 客户端必须直到所有的策略类,并自行决定使用哪一个策略类产生很多策略类 演示地址 https://github.com/steins4/designpattern/tree/master/src/main/java/com/steins/designpattern/behavioral/strategy