UML类图符号及其关系

最近在看设计模式,发现每个模式都有自己的UML类图,之前没了解过。

UML 类图中的关系分为4种,继承,实现,依赖,关联;

1,继承

实线+空心箭头,箭头指向父类

泛化是父类和子类之间的关系。表示类与类之间的继承关系,接口之间的继承关系,或者对接口的实现关系。
这里写图片描述

注意:

1. 类图分为3部分,类名,属性,方法
2. <<..>>中的为注释信息
3. 修饰符 + 代表public,- 代表 private,#代表protected,什么也没有表示包可见
4. 带下划线的属性或方法是静态的

2,实现

指的是一个class类实现interface接口的功能。
这里写图片描述

3,依赖

依赖是一种使用关系,用于两个独立的对象。
这里写图片描述

在Java中,类A 中使用了类B,其中类 B 是作为A 的方法参数,方法中的局部变量,或者静态方法调用

4,关联

体现两个类之间语义级别的强依赖关系。

表现为类A 中使用了类B,其中类B 是做为类 A 的成员变量(与上面依赖关系对比)
这里写图片描述
在UML图中可以很明显的看出依赖和关联的关系。关联中使用的类是出现在第二层的。

public class Son{  
   //关联关系中作为成员变量的类一般会在类中赋值  
    Father father = new Father();  
    public void getGift(){  
        System.out.println(“从”+father.getName()+”获得礼物”);  
    }  
}  

又包括两种特殊的:

4.1 聚合

是关联关系的一种特例,是整体与部分的关系。关联关系中的对象时相互独立的,聚合关系对象之间存在包容关系

这里写图片描述

4.2 组合

组合是聚合的一种形式,它具有更强的拥有关系,强调整体与部分的生命周期 是一致的。
这里写图片描述

聚合与组合的区别:
一个雁群中,每个大雁与雁群的关系是聚合,每只大雁都有一对翅膀,大雁与翅膀的关系就是组合。大雁不会因为它们的群主将雁群解散而无法生存 而雁翅就无法脱离大雁而单独生存——组合关系的类具有相同的生命周期

参考:
http://blog.csdn.net/zhengzhb/article/details/7331369
http://gaojiewyh.iteye.com/blog/407013
http://blog.csdn.net/sfdev/article/details/3906243
http://www.cnblogs.com/olvo/archive/2012/05/03/2481014.html#top

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值