Summary:超类和子类之间无太大区别。将它们合为一体。 函数
动机:测试
若是你曾经编写过继承体系,就会知道,继承体系很容易变得过度复杂。所谓重构继承体系,每每是将函数和字段在体系中上下移动。完成这些动做后,你极可能发现某个子类并未带来该有的价值,所以须要把超类与子类合并起来spa
作法: 继承
1.选择你想移除的类:是超类仍是子类?编译
2.使用Pull up Field 和Pull up Method,或者Push Down Method和Push Down Field,把想要移除的类的全部行为和数据搬移到另外一个类变量
3.每次移动后,编译并测试。重构
4.调整即将被移除的那个类的全部引用点,令它们改而引用合并后留下的类。这个动做将会影响变量的声明、参数的类型以及构造函数。构造函数
5.移除咱们的目标; 此时的它应该已经成为一个空类。引用
6.编译,测试im