UML:不相交还是重叠?

UML:不相交还是重叠?,uml,Uml,这不是一个真正的编程(编码)问题,很抱歉(但设计是第一位的) 我不明白不相交和重叠之间的区别。它出现在几本书中,与OCL有关,后者被认为是UML的一部分,但OMG最新的OCL规范不再提及这些术语;因此,在我看来,它似乎有点不明确。如果有人能澄清这背后的原因,我将不胜感激。它仅仅是同一个超类的多重继承吗?当前的2.2超结构规范,第76页(打印页),第7.3.21节,引用如下。它与泛化规则和集合论有关。您可以在web上搜索子类型和不相交,并阅读非UML示例,它们应该适用。尽管图7.4 8看起来很有用

这不是一个真正的编程(编码)问题,很抱歉(但设计是第一位的)


我不明白
不相交
重叠
之间的区别。它出现在几本书中,与
OCL
有关,后者被认为是
UML
的一部分,但OMG最新的OCL规范不再提及这些术语;因此,在我看来,它似乎有点不明确。如果有人能澄清这背后的原因,我将不胜感激。它仅仅是同一个超类的多重继承吗?

当前的2.2超结构规范,第76页(打印页),第7.3.21节,引用如下。它与泛化规则和集合论有关。您可以在web上搜索子类型和不相交,并阅读非UML示例,它们应该适用。尽管图7.4 8看起来很有用,并且在第78页开始的示例中。好的,我读了说明书中的例子,他们把它钉住了,但是有图片,所以我不能轻易地复制它们

来自一个示例的文本:{完整,不相交}

因为这个 泛化集是分区的(即,被约束为完全的和不相交的),Person的每个实例必须是 女性或男性;也就是说,它必须是其中之一,而不是两者兼而有之


本规范列出了所有的组合。

当前的2.2上部结构规范,第76页(打印页),第7.3.21节,引用如下。它与泛化规则和集合论有关。您可以在web上搜索子类型和不相交,并阅读非UML示例,它们应该适用。尽管图7.4 8看起来很有用,并且在第78页开始的示例中。好的,我读了说明书中的例子,他们把它钉住了,但是有图片,所以我不能轻易地复制它们

来自一个示例的文本:{完整,不相交}

因为这个 泛化集是分区的(即,被约束为完全的和不相交的),Person的每个实例必须是 女性或男性;也就是说,它必须是其中之一,而不是两者兼而有之


规范列出了所有的组合。

想象一个超类a有两个子类B和C

当A实例不能同时是B实例和C实例(即超类型的实例最多只出现在子类中)时,我们说A、B和C之间的继承关系是不相交的。否则,我们说继承集是重叠的


默认情况下,OO语言中继承的实现是不相交的。

想象一个超类a有两个子类B和C

当A实例不能同时是B实例和C实例(即超类型的实例最多只出现在子类中)时,我们说A、B和C之间的继承关系是不相交的。否则,我们说继承集是重叠的


默认情况下,OO语言中继承的实现是不相交的。

即使是指向此主题讨论的链接也可能有用甚至指向此主题讨论的链接也可能有用