UML类图定义
UML类图是UML图中的一种重要图形,是在面向对象语言用中用来表示一个类。
包含:
- 类或者类与接口的继承关系;
- 类之间的依赖、聚合等关系;
- 还描述每一个类的详细信息,包括变量,和方法;
UML类图作用
UML类图一般在详细设计过程中出现,主要用来描述系统中各个模块中类之间的关系。
通过类图,就能实际的把系统中的各个类,即对象描述清楚,下一步就是按照这个详细的设计编码了。
UML类图组成
UML类图包含7个元素:类、接口、协作、依赖关系、泛化关系、实现关系以及关联关系。
1.类
类用 矩形 来 表示,如下图所示:
矩形被划分为3个部分:
- 类名:图中最上面的矩形框中为类名,如果字体为斜体 ,表示为抽象类;
- 属性:类名下边的区域,图中的中间部分;
- 方法:操作部分,图中的下面部分;
说明:属性和方法前面的“+”、“-”和“#”表示访问级别:
+:public
-:private
#:protected
2.接口
接口的类图表述与类大致相同,不同的是接口名要添加 Interface 标识,且行为的可见性必须用 “+” 表示。
如下图:
一个类可以实现一个或多个接口, 且所有的都可以实现接口中的操作。
3.类与类之间的关系
类之间有六种关系:
1)继承
继承很容易理解,子类继承父类。
如下图所示:
2)实现
实现也很容易理解,就是实现接口的方法。
如下图所示:
3)关联
关联是一种拥有关系,比如我们每一个人都拥有身份证,这就是一种关联关系。
如下图所示:
4)依赖
依赖是一种使用关系,如下图所示:
5)组合
组合也很容易理解,整体包含部分的形式,比如老虎会包含自己的头。
如下图所示:
6)聚合
聚合是一种弱拥有关系,比如:老虎可以脱离老虎群,但又包含在老虎群里。
如下图所示:
UML类图实例
小练习简易听歌系统类图,如下图所示:
- 用户与歌手:关联关系,1个用户可能关注0到n个歌手;
- 用户与歌曲:关联关系,1个用户可能播放或者收藏0到n首歌曲;
- 歌曲与歌手:关联关系,1首歌曲对应至少1位歌手;
- 歌曲与歌曲列表:聚合关系,1到n首歌组成了1个歌曲列表;
- 用户实现接口注册和登录。
mikechen睿哥
mikechen睿哥,十余年BAT架构经验,资深技术专家,就职于阿里、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》