为了提高代码的复用性可维护性和可扩展性,在分支判断的情况下,我们可以利用多态的特性。
值得注意的是多态的方式效率低于直接使用if-else或者switch分支。
常用的手法是,
1.将策略抽象成一个接口,策略的增加表现为新增一个策略类。
2.策略参数被组合成一个参数类。
3.再设置一个接口或者参数类指针的数组。
这样,策略就全部包含在这个数组中了,策略的选取和变换中,只需要将当前策略的指针进行替换即可。
常用的手法是,
1.将策略抽象成一个接口,策略的增加表现为新增一个策略类。
2.策略参数被组合成一个参数类。
3.再设置一个接口或者参数类指针的数组。
这样,策略就全部包含在这个数组中了,策略的选取和变换中,只需要将当前策略的指针进行替换即可。