UML
UML介绍
- UML(Unified modeling language)统一建模语言,是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果
- UML本身是一套符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间的关系,比如类、接口、实现、泛化、依赖、组合、聚合等。
- 使用UML来建模,常用的工具有Rational Rose等。
UML图分类
- 用例图
- 静态结构图:类图、对象图、包图、组件图、部署图
- 动态行为图:交互图(时序图与写作图)、状态图、活动图
类图
关系
- 依赖(Dependency):只要是在类中用到了对方,那么他们之间就存在依赖关系,如果没有对方,就无法编译;通过三角实心箭头虚线表示
- 是类的成员属性
- 是方法的返回类型
- 是方法接收的参数类型
- 方法中使用到
- 泛化(Generalization):通过三角空心箭头实线表示
- A类继承了B类就称为A和B存在泛化关系,是依赖关系的特例
- 实现(Realization):通过三角空心箭头虚线表示
- A类实现了B接口,就称A和B存在实现关系,是依赖关系的特例
- 关联(Association):关联关系具有导航性,即双向关系或单向关系;也具有多重性,即一对一关系和多对多关系;通过三角实心箭头实线表示
- 单向一对一关系
- 双向一对一关系
- 一对多关系
- 聚合(Aggregation):是整体和部分的关系,整体与部分 可以分离 (比如人和身份证),是关联关系的特例;通过菱形空心箭头实线表示
- A类的对象作为B类的成员变量存在,则称A和B存在聚合关系
- 组合(Composition):整体与部分 不可分离 (比如人和老呆);通过菱形实心箭头实线表示
- 通过new完成实例化,就成为存在组合关系
自我理解:这六种关系可以看作接口,其中依赖是顶级接口;泛化、实现实现了依赖,关联是二级接口,继承了依赖,聚合和组合实现了关联。
Q.E.D.