重构二--在对象之间搬移特性(Introduce Local Extension)(4)--范例(1)

重构二--在对象之间搬移特性(Introduce Local Extension)(4)--范例(1)
我将以Java1.0.1的Date class为例。Java 1.1已经提供了我想要的功能,但是在它到来之前的那段日子,很多时候需要扩展Java 1.0.1的Date class。

第一件待决事项是使用subclass或wrapper。subclassing是比较显而易见的办法:
class mfDate extends Date {
    public nextDay() ...
    public dayOfYear() ...
}

wrapper则需要上委托(delegation):
class mfDate {
    private Date _original;

你可能感兴趣的:(重构二--在对象之间搬移特性(Introduce Local Extension)(4)--范例(1))