UML_类图

背景知识
1 UML(Unified Modeling Lanuage)统一建模语言,是为开发人员提供一套 标准通用的设计语言来构建计算机应用程序。(就像建筑工人使用的建筑图纸一样)

2 UML根据不同的使用场景可以分为很多中类型:用例图,类图,序列图,状态图,活动图组件图和部署图等。
   其中,用例图用来描述系统一个功能单元;
              类图表示不同实体之间的彼此关系;
              序列图用来描述一种详细的流程;
              状态图表示某个类处于的状态信息和状态转换的信息;
              活动图表示在处理某个过程时两个或多个类对象之间的过程控制流;
              组件图提供系统的物理视图;
              部署图表示软件系统如何部署到硬件系统中。
  本文主要关注类图。


类图
类对象之间的相互关系包括:依赖,关联,聚合,组合,泛化,实现等。
各种关系的强弱组合:泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖。

1 类的基本概念
包含三个概念:类名,成员变量,成员函数

其中,+、#、-分别表示public、protected、private
乔宗鹏

2 泛化(Generalization)
【关系说明】子类和父类之间的继承关系。
【代码体现】基类和派生类
【箭头指向】带三角箭头的实线,箭头指向父类。



3 实现(Realization)
【关系说明】类与接口之间的关系。is-a的关系。(c++中接口一般都是用抽象基类表示)
【代码体现】抽象基类和派生类
【箭头指向】带三角箭头的虚线,箭头指向父类。
  

4 组合(Composition)
【关系说明 】整体和部分的关系,但部分不能离开整体而单独存在。contains-a的关系。例如:公司和部门之间的关系。
【代码体现】成员变量。
【箭头指向】带实心菱形的实线,菱形指向整体。
  


5 聚合(Aggregation)
【关系说明 】整体和部分的关系,但部分可以离开整体而单独存在。has-a的关系。例如:车和车轮的关系,车子没了车轮还可以单独存在。
【代码体现】成员变量。
【箭头指向】带空心菱形的实线,菱形指向整体。



6 关联
【关系说明】双方关系一般是平等的,可以是双向的也可以是但单向的。例如:丈夫和妻子的关系。
【代码体现】成员变量。
【箭头指向】带普通箭头的实心线,指向被拥有者。



7 依赖(Dependency)
【关系说明】类A使用到类B,将类B作为参数在类A成员函数中使用,就说类A依赖类B。比如,人过河要借用一条船。此时人和船就是依赖关系,人依赖船。
【代码体现】局部变量,方法的参数或者静态方法的调用。
【箭头指向】带箭头的虚线指向被依赖者。
 














评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值