我很难弄清楚在另一个类中实例化一个类,然后使用它的某些方法是否算作 UML 类图中的依赖关系或关联。例如:
public class Example {
Thing thing = new Thing();
public void method() {
thing.doSomething();
}
}
这种关联是因为示例“有一个”东西吗?或者这种依赖性是因为示例有一个“使用”Thing 才能正常工作的方法?
最佳答案
在 UML 中,您可以使用 Example
和 Thing
之间的关联来表示这一点:
- 纯粹主义者会建议 dot notation并在
Thing
末端放一个小点:这表明Example
拥有关联的末端。并非所有建模工具都支持此表示法。 - 由于
Example
的实例始终知道Thing
的实例,但可能不是相反,因此您希望显示此关联可导航(末尾的空心箭头) )。
关联意味着依赖。因此,您不应向图中添加冗余依赖项。没有关联的依赖关系如下所示:
public class Example {
Thing thing = new Thing(); // Example is associated to Thing
public void method(AnotherThing x) { // Example depends on AnotherThing
...;
}
}
关于java - 在另一个类中使用一个类的实例是否算作依赖或关联?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70357205/