如何解读UML类图中交叉关联线上的叉号(X)含义?
类图关联线叉号(X)含义说明
如下是对应的类图:
--------- --------- | |* 1 | | | class |-X------------->| class | |CourseExec| +courseExec | Course | --------- ---------
叉号的具体含义
这个X是UML类图规范中的不可导航性标识,用来限定关联的访问方向。
对关联关系解读的影响
- 关联线指向Course的箭头本身代表正向可导航:可以从CourseExec实例直接获取到它关联的1个Course实例,对应CourseExec类中会设计存储Course引用的成员属性,和你已知的关联规则匹配。
- 加上这个X之后,明确该关联为严格的单向关联:无法从Course实例反向访问到它关联的多个CourseExec实例。也就是说Course类不会设计存储关联CourseExec列表的成员属性,如果需要获取某个Course对应的所有CourseExec实例,只能通过全局遍历CourseExec实例筛选匹配项,无法直接从Course对象中直接拿到对应列表。
内容的提问来源于stack exchange,提问作者Kob
相关产品推荐
相关产品推荐

