前言
简单整理一些uml中的类图。
正文
类的基本表示法:
名称、属性(类型、可见性)、方法(参数、返回值、可见性)
想上面这样,第一行是名称,第二行是属性,第三行是方法
可见性:
- 表示public
- 表示private
表示protect
接口表示法:
接口和类差不多,但是前面有一个<
包表示法:
包可以表示层级关系:
包还可以用来组织各种内容:
包是一个层级更大的概念,可以指不同层级,也可以指不同的子系统等。
类与类之间的关系:
- 依赖关系
- 关联关系
- 泛化(extends)
- 实现(implements)
- 聚合关系
- 组合关系
现在来一一看下他们的关系:
关联关系:
关联关系分为双向关系和单向关系:
双向这样表示也是可以的:
就是用一更横向表示。
那么双向管理有两种表示法,一种是双向实心箭头,或者一根横线。
比如老师和学生,老师拥有多名学生,学生可以有多名老师。
单向关联如上,一个人拥有多个地址,但是地址和人没有关系。
也有些地方这样表示的:
表示他们1对多的关系。
这样表示都是可以的。
然后值得注意的是有些地方把双向关系称为关联,单项关系称为关系。
这是一个值得注意的地方,看团队的语义。
最后一个关联是自关联:
比如节点下面有节点,这就是自关联了。一个节点Node的成员又是节点对象。
下面是实现:
比如UserDaoImpl 实现 UserDao。
用的是虚线和空心箭头。
然后是继承关系:
比如狗继承动物,用的是实现空心箭头。
下面是依赖关系:
用的是虚线箭头表示。
聚合关系:
聚合(Aggregation)关系表示整体与部分的关系
在聚合关系中,成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在
在UML中,聚合关系用带空心菱形的直线表示
飞机场里面有飞机。
组合关系:
组合(Composition)关系也表示类之间整体和部分的关系,但是在组合关系中整体对象可以控制成员对象的生命周期,一旦整体对象不存在,成员对象也将不存在
成员对象与整体对象之间具有同生共死的关系
在UML中,组合关系用带实心菱形的直线表示
结
下一节领域模型