重构二--在对象之间搬移特性(Introduce Local Extension)(3)--作法

重构二--在对象之间搬移特性(Introduce Local Extension)(3)--作法
作法(Mechanics)
    • 建立一个extension class,将它作为原物(原类)的subclass或wrapper。
    • 在extension class中加入转型构造函数(converting constructors)。
        • ==》所谓[转型构造函数]是指接受原物(original)作为参数。如果你采用subclassing方安,那么转型构造函 数应该调用适当的superclass构造函数;如果你采用wrapper方案,那么转型构造函数应该将它所获得之引数(arument)赋值给[用以保 存委托关系(delegate)]的那个值域。
    • 在extension class中加入新特性。
    • 根据需要,将原物(original)替换为扩展物(extension)。
    • 将[针对原始类(original class)而定义的所有外加函数(foreign methods)]搬移到扩展类(extension)中。

你可能感兴趣的:(重构二--在对象之间搬移特性(Introduce Local Extension)(3)--作法)