正在加载图片...
问题。尤其是与以前类似问题的面向对象分析结果比较来寻找可以直接重用的 泛化一一特化结构并吸取有关教训。如果存在许多特化类,则首先考虑最简单 的和最复杂的特化类,然后处理其他的。如考虑对象“飞机”,它可以按不同的 分类方式来进行特化: 军用和民用,喷气和普通,固定机翼与可变机翼,商用和私人,在航行中 的和在地面上的 在每一种情况下,查看潜在的属性和方法。检査特化对象之间的区别:同 时检验它们是否是真实的特化类。如汽车和飞机。另外还要考虑是否该特化类 属于该问题域 其次,将某个类看作特化类。那么,是否从该问题域中的其他类就能找到 个泛化类,且它能表示共同的属性、方法或两者呢?是否泛化对象反映了真 实的泛化?是否泛化对象本身仍在问题域的范围内? 采用继承来显式表达属性和方法的共同部分,可以实现在一般特殊结构中 恰当地分配 属性和方法。将共同的属性和方法放在上层,而将特有的 属性和方法放在下层 泛化一一特化结构的准则之一就是它是否反映了问题域中的泛化一一特化 关系。 ③层次与网络 每个一般特殊结构均形成层次或网络。在实践中泛化——特化结构的最普 通形式就是层次(如下图所示)。 Person LegalName Address OwmerPerson ClerkPerson ClerkOwnerPerson Critizenof DateOfBori th Citizens Useridenti fication DateOfBirth Password User identification Photo P ThumbPrint Photo ThumbPrint 在本例中, Person(人)是 Owner(所有者)、或 Clerk(工作人员)或是 一个 Clerk兼 Owner,这一层次的特化类中就存在着一些冗余信息。 借助于泛化一一特化网络还可以研究其他问题域的持化类,而且还可以显 式地表示更多属性和方法的公共部分。 下图中的例子表明在某个问题域中的 Person是一个 Owner、一个Clek或 两者。特化类 Owner Clerk Person描述了一个有着多重直接泛化类的类,它表明 一个对象继承了来自其祖先的属性和方法。而且如果这个类本身还有属性和方问题。尤其是与以前类似问题的面向对象分析结果比较来寻找可以直接重用的 泛化——特化结构并吸取有关教训。如果存在许多特化类,则首先考虑最简单 的和最复杂的特化类,然后处理其他的。如考虑对象“飞机”,它可以按不同的 分类方式来进行特化: 军用和民用,喷气和普通,固定机翼与可变机翼,商用和私人,在航行中 的和在地面上的。 在每一种情况下,查看潜在的属性和方法。检查特化对象之间的区别;同 时检验它们是否是真实的特化类。如汽车和飞机。另外还要考虑是否该特化类 属于该问题域。 其次,将某个类看作特化类。那么,是否从该问题域中的其他类就能找到 一个泛化类,且它能表示共同的属性、方法或两者呢?是否泛化对象反映了真 实的泛化?是否泛化对象本身仍在问题域的范围内? 采用继承来显式表达属性和方法的共同部分,可以实现在一般 特殊结构中 恰当地分配 属性和方法。将共同的属性和方法放在上层,而将特有的 属性和方法放在下层。 泛化——特化结构的准则之一就是它是否反映了问题域中的泛化——特化 关系。 ③层次与网络 每个一般特殊结构均形成层次或网络。在实践中,泛化——特化结构的最普 通形式就是层次(如下图所示)。 在本例中,Person (人)是 Owner(所有者)、或 Clerk(工作人员)或是 一个 Clerk 兼 Owner,这一层次的特化类中就存在着一些冗余信息。 借助于泛化——特化网络还可以研究其他问题域的持化类,而且还可以显 式地表示更多属性和方法的公共部分。 下图中的例子表明在某个问题域中的 Person 是一个 Owner、一个 Clerk 或 两者。特化类 OwnerClerkPerson 描述了一个有着多重直接泛化类的类,它表明 一个对象继承了来自其祖先的属性和方法。而且如果这个类本身还有属性和方
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有