类和类图
1 类
1.1 类的类型
1.1.1 边界类(界面类)
边界类位于系统与外界的交界处,承担系统与外界的信息功能.
边界类怎么确定:
边界类处在用例图中,参与者与用例的关联处,可以根据用例图发现边界类。
1.1.2 实体类
实体类对应着现实中的客观实物,用来保存信息,一般对应着数据表、文件等。
怎么确定:
实体类可以从现实中存在的客观事物,以及需要持久存放的信息两方面来发现。
1.1.3 控制类
控制类承担着事务处理,控制调控的控制作用。
一个用例中最少会有一个控制类,用来控制用例中的事件顺序,也可以在多个用例之间协调用例之间的联系。
例如:
2 类之间的关系
2.1 关联
表示事物之间的一种牵连式的固有联系。
例如:
关联(association): 模型元素之间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义的链接的描述。
关联可以分为单向关联,双向关联。
关联一定指的是类中对象与类中的对象之间的连接对应关系。
2.2 聚集和集合
2.2.1 聚集
聚集(aggregation): 表示类之间一种松散的整体与部分的组成关系,是一种特殊的关联。
2.2.2 组合
组合(composition): 表示类之间一种紧密的整体与部分的组成关系,也是一种特殊的关联。
2.2.3 聚集与组合的区别
① 聚集松散,组合紧密;
② 一个部分事物对象可以属于多个聚集对象,但一个部分事物对象仅能属于一个组合对象;
③ 聚集的对象生命周期可以不同,但组合对象则是同存同亡。
2.3 泛化
泛化(generalization): 表示事物之间的一般与特殊的关系。也可以称为继承关系。
泛化关系除了表示类与类之间的关系之外,还可以表示参与者、用例、包、构件、接口等建模元素之间的关系。
2.4 依赖
依赖(dependency): 表示两个元素X、Y,如果X的变化必然导致Y的变化,则称Y依赖X。
依赖关系不仅限于类,用例、包、构件之间都可以存在依赖关系。
2 类图
类图(Class Diagram): 是由类,相关建模元素,及其关系构成的图,用来描述类之间的静态关系。
类图在系统中处在核心位置。也是UML中最为重要的一种图。
建立类图的一般步骤:
① 研究分析问题领域,确定系统需求;
② 确定类,明确类的含义和职责,确定类的属性和操作;
③ 确定类之间的关系。关联,泛化,聚集,组合,依赖;
④ 调整和细化类及其关系,解决重复和冲突;
⑤ 绘制类图,并增加相应说明。
注意点:
1、类图是用来描述系统资源和要素相互之间的静态结构关系。
2、类可以优化,一个复杂类可以分解为多个简单类。
3、描绘类图时,应根据所要表现的应用需要来提取要素,绘制类图。