UML类图中的关联和聚合的多重性是否与关系数据库(实体-关系图)中关系的基数相同?
发布于 2022-06-12 21:13:54
总之
是的,UML中的多重性的概念与ERD中的基数相同。主要的区别在于术语。
游行示威
首先,我们需要记住基数的原始含义,这意味着给定集合中元素的数量。
UML 2.5.1规范解释了第33页
集合的基数是该集合中包含的值的数量。多重性指定它所代表的集合的有效基数。多重性是基数的约束,它不应小于下界,也不应大于为多重性指定的上界(除非多重性是无限的,在这种情况下,上界不存在约束)。
为了缩短它,这里的集合引用了一个类的实例,这些实例链接到另一个类的给定实例。所以UML定义说,多重性定义了这些集合的允许大小上存在的约束。
有趣的是,ER模型的发明者陈彼得在他的第一篇论文中根本没有提到基数。陈说“映射类型为1:1、1:n和n:m,并解释说:
通过在关系集中指定"1“、"m”、"n“来指示每个实体集(在关系集中允许)中的实体的数量()。
我们必须小心术语。在这里,实体是指某些属性的一组特定值,即实例,而实体集是指我们俗称为“实体”的所有可能的实例。
总之,ERD和UML的措辞可能略有不同,但在这两种情况下,都是关于一方面的实例数量的限制可能与另一侧的实例有关。
https://stackoverflow.com/questions/72071516
复制相似问题