Java UML与代码的关联
我完全理解代码,但是我在理解与代码相关的UML时有点困难 问题1-如果我有课Java UML与代码的关联,java,uml,Java,Uml,我完全理解代码,但是我在理解与代码相关的UML时有点困难 问题1-如果我有课 public class one {....} public class two { one ob; public two(){ob=new one();} } 我知道这是一种关联,但我是否在类图中用箭头表示它 问题2-如果我有以下课程 public class three { public three(){.........} public void method() { one
public class one
{....}
public class two
{
one ob;
public two(){ob=new one();}
}
我知道这是一种关联,但我是否在类图中用箭头表示它
问题2-如果我有以下课程
public class three
{
public three(){.........}
public void method() { one obt=new one(); }
}
这是三班和一班之间的联系吗?我不确定,因为它是从该方法应用的。首先,箭头在另一个方向,从
two
到one
,因为two
指向one
。如果没有用箭头显示,则表示您不知道关系的方向-可以是one
调用two
和two
调用one
。因为您知道two
拥有one
,所以应该添加箭头方向
关于第二个问题,是的,这是从3
到1
的关系,因为3
需要1
。此关系可以是依赖关系或关联关系,具体取决于three
对one
的作用
我知道这是一种关联,但我是否在类图中用箭头表示它
如果类one
未引用类two
,则应具有箭头。但它从two
指向one
(与显示方式相反)。原因:箭头表示适航性。类two
可以导航到类one
,因为它包含一个实例。事实并非如此。从技术上讲,它应该是一个开放的箭头,而不是您使用的封闭形式
这是三班和一班之间的联系吗?我不确定,因为它是从这个方法应用的
如果从three
到one
的唯一引用是作为方法参数,那么您很可能会显示为依赖项而不是关联。关联声明实体之间的系统关系,如由订单行组成的采购订单
。在最常转换为成员变量(或其集合)的代码中。依赖关系是一种弱于关联的关系形式,并不意味着系统性的联系
hth.需要纠正的一点是:箭头表示可导航性(而非可见性)。无箭头表示关联可以在两个方向上导航。(顺便说一句,这并不一定意味着它有一个成员变量。)