函数上移(Pull Up Method)
有些函数,在各个子类中产生完全相同的结果;将该函数移至超类
一、动机
避免重复
二、做法
1、检查待提升函数,确定它们是否完全一致
2、函数签名不同的时候,先弄成一样的
3、在超类中新建一个函数,将某一个待提升函数的代码复制到其中,做适当的调整,然后编译
4、移除一个待提升的子类函数
5、编译,测试
6、逐一移除待提升的子类函数,直到只剩下超类中的函数为止。每次移除后都需要测试
7、观察该函数的调用者,看看是否可以改为使用超类类型的对象
时间: 2024-09-20 18:35:24