UML中关系整理

在UML中,关系是非常重要的语义,它抽象出对象之间的联系,让对象构成某个特定的结构。

1.关联关系(association)

关联关系是用一条直线表示的,如


它描述不同类的对象之间的结构关系,它在一段时间内将多个类的实例连接在一起。关联关系是一种静态关系,通常与运行状态无关,而是由“常识”,“规则”,“法律”、等因素决定的,所以关联关系是一种”强关联“的关系。

例如,公司与员工之间一对多就是一种符合“常识”的关系;乘车人和车票之间的一对一关系是符合“规则”的关系;公民和身份证之间的一对多关系是符合“法律”的关系。
关联关系用来定义对象之间静态的、天然的结构。这与依赖关系是不同的,依赖关系表达的是对象之间的临时性的、动态的关系。在JAVA代码里,关联关系通常是以实例变量(成员变量)的形式实现的。与依赖相比,关联的两个对象之间通常不会相互直接使用,尽管它们相互”知道”对付的存在,但一般都是由外部对象来访问的,如一个外部访问者可以通过员工对象获得公司对象。
关联关系具有多重性,常见的为:
  • 一对一关联
  • 一对多关联
  • 多对多关联
关联关系一般不强调关联的方向,当A    B时,我们默认A和B都相互”知道”对付的存在。在大多数的情况下,这是适当的。但如果特别强调了关联的方向,如A     >B,那么表示A”知道”B,但B不”知道”A。
例如对象之间的父-子结构,如果是无方向的,表明父子对象相互拥有对付的实例变量;如果有方向的,如父到子,则表明父对象有子对象的实例变量,但子对象没有父对象的实例变量。
特别的,在用例模型中,单向关联关系用于连接参与者和用例,箭头由参与者指向用例,表示参与者”知道”用例的存在。

2.依赖关系(dependency)

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值