UML类图:行中属性的含义是什么?

UML类图:行中属性的含义是什么?,uml,associations,class-diagram,Uml,Associations,Class Diagram,你好,stackoverflow社区: 我以前从未在行中看到属性。有人能解释一下这些定义在哪里吗 通常我们在第二行的类中有属性。所以我对这个符号感到困惑。 这些不是“属性”,而是关联结束名,也称为“角色”。这意味着类和将有两个属性mlhs和mrhs,分别引用一个表达式类型。它还意味着类Not将具有mexpr属性 顺便说一下: 应将放置在靠近关联末端的接口一侧。否则,它们可能会与协会名称混淆,而协会名称是另一个名称 聚合菱形不会在此模型中添加任何值 最后,您可以将表示可导航性的关联末端的开放箭头

你好,stackoverflow社区:

我以前从未在行中看到属性。有人能解释一下这些定义在哪里吗

通常我们在第二行的类中有属性。所以我对这个符号感到困惑。

这些不是“属性”,而是关联结束名,也称为“角色”。这意味着类
将有两个属性
mlhs
mrhs
,分别引用一个
表达式
类型。它还意味着类
Not
将具有
mexpr
属性

顺便说一下:

  • 应将放置在靠近关联末端的接口一侧。否则,它们可能会与协会名称混淆,而协会名称是另一个名称
  • 聚合菱形不会在此模型中添加任何值
  • 最后,您可以将表示可导航性的关联末端的开放箭头替换为表示关联末端所有权并暗示可导航性的点符号

等等。我想我是对的。这里的组合(我忘了把它涂成黑色)只是为了说明参数是否为接口类型?对于包,m应该是~否,组合表示是否删除了Not实例,该实例同时删除了通过expr存储的关联表达式,以及是否删除了a,该实例同时删除了通过lhs和rhs存储的关联表达式。但这里没有构图,只有aggregation@RackCloud在此上下文中使用可见性~/package对我来说毫无意义,您确定它们不是-/private吗?@RackCloud对象组合不需要UML组合。关于UML组合,Bruno已经回答了。对不起,我误读了~m(通常用于命名属性)。事实上,包可见性建议您在属于该类的a类职责之外执行。如果你没有很强的理由,听起来像是设计的味道。也不建议使用protected,因为它会导致讨厌的bug(请参阅关于LSP和所谓的“历史约束”的讨论)。保密。如果需要,通过getter提供只读访问;-)