- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关联和依赖有什么区别?你能给出代码示例吗?
A类和B类是什么关系?
class A
{
B *b;
void f ()
{
b = new B ();
b->f();
delete b;
}
}
最佳答案
简短的回答是:没有严格定义在 UML 中应该如何表示任何特定的源语言构造。这将是所讨论语言的标准化 UML 配置文件的一部分,但遗憾的是,这些文件很少而且相距甚远。长答案如下。
在你的例子中,恐怕我不得不说“都不是”,只是为了困难。 A
有一个 B
类型的成员变量,所以这个关系实际上是一个聚合或者一个组合……或者一个有向关联。在 UML 中,与命名目标角色的定向关联在语义上等同于具有相应名称的属性。
根据经验,如果 b
是聚合在 A
中初始化的构造函数;如果它也在 B
中被破坏,它就是一个组合的析构函数(共享生命周期)。如果两者都不适用,则它是属性/定向关联。
如 b
不是 A
中的成员变量,以及局部变量 b
没有被操作(没有调用它的方法),那么我会将其表示为依赖项:A
需求B
,但它没有该类型的属性。
但是f()
实际上调用了 B
中定义的方法.这对我来说是正确的关系 <<use>>
,这是一种更特殊的依赖形式。
最后,(无向)关联是两个类之间最弱的链接形式,因此我在描述源结构时倾向于不使用它们。当我这样做时,我通常在没有直接的源代码关系时使用它们,但是这两个类仍然有某种关联。这方面的一个例子可能是这样一种情况,即两者负责同一较大算法的不同部分,但第三类同时使用它们。
关于UML 关联和依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7718035/
我正在为 Apple Watch Extension 设计 UML 图。我应该如何使用 UML 表示主机应用程序? UML 节点还是 UML 组件?请注意,扩展应用程序和 iPhone 应用程序(主机
UML 类图是描述类及其关系的标准图形符号。 是否有标准的文本符号 (DSL) 来描述相同的内容?不要说 XMI 或 EMF;-) 我认为您可以使用 Corba IDL 来做到这一点,并为类使用接口(
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
假设我正在设计一个分布式应用程序: 它由一台主机组成,即公司的前端Web服务(CompanyWS)和一台或多台主机,比如三台,即公司的分布式仓库。每个仓库都是一个 Web 服务 (WarehouseW
是否有任何正式方式表明函数参数是可选的? 例如,在这张图片中: 我想通知您可以填充 nodes_clicked 参数或将其留空。 谢谢。 最佳答案 可选参数在 UML 中没有任何处理,因为它只是编译器
UML 序列图中的垂直矩形表示什么? 例如我想知道绿色箭头指向的矩形的含义。这些矩形的高度有什么意义吗? 最佳答案 垂直矩形表示 执行规范 . 执行规范是对象交互的一部分,表示对象在执行某些事件或只是
像下面用 StarUML 绘制的 UML 状态图 (SD) 中是否允许没有直接转换的状态? State1 不直接参与任何转换,所以我怀疑这在 UML 中是否允许/可取。我认为在我的应用程序中,我实际上
我正在使用 Enterprise Architect 制作 UML 类图(并最终用它生成 PHP5 代码)。我可以为类添加属性。对于每个属性,我可以选择一个构造型:DomainCodedValue、F
我阅读了域模型及其重要性,我有以下疑问: 领域模型可以解决什么样的问题?换句话说,对于每个问题,我应该建立一个域模型吗? 据我所知,领域模型使用类图表示。类图和领域模型之间没有区别吗? 我也想了解词汇
首先,我对 UML 还是很陌生;但是,非常感兴趣并且正在尝试尽可能多地了解它。 话虽如此,我正处于被指示组装“上下文图”的情况。我觉得我好像理解什么是上下文图的概念以及如何创建上下文图,所以我觉得我没
我们在学校学习行为状态图的转换具有语法: list of events [guard condition] / list of actions 但是我在 Internet 上找不到任何使用多个事件进行
在维基百科上,我读到关联关系是实例级别的关系,所以我们谈论的是两个类的对象之间的关系。 当我们实际绘制类图时,为什么要在类元素或块而不是对象上使用关联?还有一些类级别的关系,我们再次使用类元素。由于我
我无法理解 UML 中的限定符是什么。 例如,在扫描的页面中,有一个名为 “SharedRegister”,其中包含“state”和“plateNumber”。 为什么不使用一个名为 SharerRe
大多数嵌入式系统应用程序都是用 C 语言编写的,即非 OOP。但是 UML 是为 OO 设计的。所以我的问题是为什么人们提倡和使用 UML 用于嵌入式系统(和实时嵌入式系统)? 最佳答案 UML 不仅
我们如何在 UML 图中显示一个线程被调用并反过来调用其他线程。这看起来更像是一个工作流。是否可以用 UML 表示 最佳答案 Sequence Diagram应该做的工作。 关于uml - 类图中的线
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
我有一个关于 uml 组件图的问题:正如我在 Wikipedia 中看到的那样,可以创建我自己的“组件类型”,如 > , >等等。我以为我只能说>和 > ?!这些条目是刻板印象还是什么?我想对像 or
我知道依赖关系是用条纹箭头描述的,例如: Client ----->----> Server 我发现其他关系(关联、组合、聚合)通常需要多重性,但是,我不确定依赖关系是否需要多重性。我应该在上图的两边
我正在尝试创建 UML 图。例如,我有一个带有方法 a() 的类 A 和扩展 A 并覆盖方法 a() 的类 B。是否有任何标准来指示 UML 中的重写方法? 最佳答案 不,对于覆盖父类上的操作的操作没
假设您有一个更大的汽车配置文件的摘录: 现在我想为汽车定义一些约束,比如这些约束状态之一,如果 attrA是 true ,然后 attrB必须是 false像这样使用 OCL: Context UML
我是一名优秀的程序员,十分优秀!