书城计算机大话设计模式
11030400000203

第203章 4 扩展现有对象类

小A:“如何将属性添加到缺省模式中的对象类?”

大:“取决于该属性是否还要应用到另一个对象类。如果该属性仅应用于一个对象类,请将其添加到新的结构对象类中,并让该新的对象类继承需要扩展的对象类的属性。例如,要扩展缺省模式中的对象类A,请将属性添加到新结构对象类B,然后定义对象类B 继承A。”

大B:“如果属性要应用于多个结构对象类,请将其添加到一个新的辅助对象类中,然后将该辅助对象类添加到要使用该属性的每个结构对象类中。”

小A:“假定需要将相同属性添加到缺省模式中的对象类A 和B呢?”

大B:“请将该属性添加到一个新的辅助对象类C 中,然后将C 添加到A 和B 中。注意添加新的目录条目类型,通常应该创建继承顶级对象类的新结构对象类。”