回答
extends关系
这是aggregation。装饰者有很多组件。
一个是另一个聚合的扩展(这是一个在装饰者小诺布)。 表示装饰器可以包含0个或更多个组件。
HTH
马里奥
+1我错过了右侧的聚合箭头。 – 2010-09-22 05:56:41
组件和装饰之间的两种关系构成另一个图案 - Composite。
- 装饰是组件的一个子类型(相对与三角形)
- 装饰聚集体(包括)的许多组件(相对与金刚石)
它允许创建递归树结构。在装饰器上调用的操作被委托给它所包含的元素。因此,在您的图中,Decorator.Operation()的行为是在其每个聚合组件上调用Component.Operation()。由于thpse中的一个或多个本身可能是装饰器,因此对Operation()的调用会通过树结构传播。
很好斑点! – 2010-09-22 09:37:19
聚集。看到差异的最简单方法是“待定”和“有”。 对象组件“有装饰器”。一个对象装饰器“是一个组件”。
您正在描述一个聚合。 问题是这个图应该从你的代码中反转,否则你应该从你的图中得到一个代码。只是图形化的UML设计对我来说还不够。
当我使用没有代码映射到UML的工具时,我的建模早晚会变得糟糕! 我创建了很好的图表,但除了演示文稿外没有人真正使用它们。我意识到这对团队中的每个人都是浪费时间。 我已经切换到一个专业的工具,然后我的项目真的被团队使用,而不是在故事板中使用一次图形视图。 令我感到惊讶的是,开发人员还纠正了我的图表,因为在实施阶段,UML中的优点在代码中是不可能的:-) 这就是为什么如果使用类图,UML作为独立对我没有任何价值。我使用开源图形工具做了这个错误,但不会再这样做!
- 1. UML:这种关系是什么意思?
- 2. UML符号类关系Java
- 3. 什么是UML
- 4. 这是什么样的UML图?
- 5. 这是什么样的关系?
- 6. 将UML符号反转为UML符号?
- 7. UML - 在方法中声明类实例时什么是关系
- 8. 这个MSVC符号是什么意思?
- 9. 这个符号的含义是什么:∧?
- 10. 这个符号是什么意思:: =?
- 11. 这个eclipse符号是什么意思?
- 12. 这个符号是什么意思?
- 13. 这是什么类型的符号?
- 14. 这些git符号是什么意思?
- 15. 这是什么数据符号?
- 16. 什么是智能手表的UML符号?
- 17. 什么是oracle 11g中的递归关系的符号?
- 18. 这是什么JavaScript的符号做:对象[关键](值)
- 19. 这个问号运算符是关于什么的?
- 20. 这是什么滚动模式和相关的符号调用?
- 21. 什么是₧符号?
- 22. UML依赖关系
- 23. 加号符号在关系建模中意味着什么?
- 24. 这是什么?符号的意思是这里
- 25. 这是什么号码?
- 26. 这里逗号是什么?
- 27. 这是什么系列:1,1,2,3,3,3,4,4,5,5,5,
- 28. 这是什么类型的关系,这对于一个类图
- 29. 符号UML类图
- 30. 符号UML类图
AFAIK,扩展关系是在用例之间不是类。 – odiseh 2010-09-22 05:49:03
@odiseh:你错了。类之间有扩展的关系。 – 2010-09-22 05:53:05
+1 Lie Ryan - 扩展在类之间有效。 – sfinnie 2010-09-22 10:21:23