class Employee {...}
class Salesman extends Employee {...}
class Employee {...}动机
在重构类继承体系时,我经常把函数和字段上下移动。随着继承体系的演化,我有时会发现一个类与其超类已经没多大差别,不值得再作为独立的类存在。此时我就会把超类和子类合并起来。
做法
选择想移除的类:是超类还是子类?
我选择的依据是看哪个类的名字放在未来更有意义。如果两个名字都不够好,我就随便挑一个。
使用字段上移(353))、字段下移(361)、函数上移(350)和函数下移(359),把所有元素都移到同一个类中。
调整即将被移除的那个类的所有引用点,令它们改而引用合并后留下的类。
移除我们的目标;此时它应该已经成为一个空类。
测试。