泛化和专业化 - 有什么不同

时间:2013-06-13 09:49:43

标签: architecture

我很难找到泛化和专业化之间的区别,以及何时使用其中任何一个。

任何人都可以启发我吗?

最后还是使用UML的插图

1 个答案:

答案 0 :(得分:5)

Animal是一种概括,Dog是专业化。您的超类是一个通用类,但您的子类将是您的超类的专用继承者。随着继承层次结构向下移动,它变得更加专业化,而且不那么通用化。

概括

泛化是从两个或多个类中提取共享特征,并将它们组合成一个通用超类的过程。共享特征可以是属性,关联或方法。

专业化

如果从现有的超类创建了一些新的子类来执行超类的特定工作,那么它就称为特化。

您可以使用UML图here获得更清晰的教程。