算法切换
关键字:算法切换
意图:
关注算法的封装:将每一个算法封装到单独的类,使他们可以相互替换。
优点:对象(员工)与算法(岗位薪资计算方式)隔离。
缺点:客户端代码必须知道所有算法的实现,并自行选择。
对象与算法隔离开来,这样就可以实现
需要更改的部分可以切换,并且隔离开来
不需要切换的部分,不会影响变化的类。
和算法相关的变化隔离开来
例如:
当一个对象使用其他父类的子类的不同方法,方法中的算法不同,需要更改方法时。
使用组合替代继承来解决此问题。
组合复用原则