类图是面向对象系统建模中最常见的图,类图显示了一组类,接口,协作以及它们之间的关系.
类图用于对系统静态设计视图建模.其大多数涉及对系统的词汇,协作或模式的建模.类图也是两个相关图的基础,这
两个相关图是构件图和部署图.
类图不仅对结构模型的可视化,详细和文档化很重要,而且对于通过向工程与逆向工程构造可执行的系统也很重要.
一.类图的总结图:
三.类图的关系
关系 |
意义 |
表示法 |
关联 |
两种类的实例间的关系 |
|
依赖 |
一个指向以其他类作为超类的继承连线 |
|
泛化 |
子类继承父类的属性或者方法 |
|
实现 |
接口和类间的实现 |
|
1.关联关系
关联(Association)是实例之间的结构关系.例如,房间是有哦墙和一些其他事物组成的,墙上可以镶嵌门和窗,管道可
以穿过墙体.
2.依赖关系
依赖(Dependency)是使用关系.例如,水管依赖热水管,对它们所运送的水进行加热.
3.泛化关系
泛化(Generalization)把一般类连接到较为特殊的类,也称为父类/子类关系.例如,观景窗是一种带有固定的大窗格的
窗户,庭院窗也是一种带有向两边开的窗格的窗户.
4.实现关系
实现(Realization)是一个类描述另一个类保证实现的合约.
关于图之间的关系解说,请看我的博客:http://blog.csdn.net/tang_huan_11/article/details/8063824
四.关系的多样化
多样性 |
意义 |
0…1 |
O或1个实例,n...m符号表示n到m个实例 |
0…* |
0或无限个实例 |
* |
无限个实例 |
1 |
只有一个实例 |
1…* |
最少一个实例 |
四..画类图的技巧
一个构造良好的类图,应满足如下的要求:
1. 注重表达系统静态设计视图的一个方面
2.仅包含对理解该方面必要的元素
3.提供与抽象的层次一致的细节,仅带有对理解系统必要的修饰
4.没有过分地压缩内容以致使读者对重要的语义产生误解.
当绘制类图时,要遵循如下的策略:
1. 要给出一个能反映出类图的用途的名称
2.安排各个元素,尽量减少线段交叉.
3.在空间上组织元素,是的在语义上接近的事物在物理位置上也接近.
4.用注释或颜色作为可视化提示,把关注点引向类图的重要特性.
五.以机房收费系统为例:
从三个角度考虑:
1. 以机房收费系统的功能为例画的类图:
2.以机房收费系统的用户角色画的类图:
3.以机房收费系统数据操作为例: