uml是Unified Modeling Language的简称,中文名称为统一建模语言。顾名思义,他就是在计算机程序设计过程过程中用来表示业务模型,概念模型等信息的图形展示。
类图是描述软件系统中类与类之间的作用关系,用来展示软件系统的结构,以图型方式来直观表达出系统设计系统理念。
类是面向对象语言的重要思想,它把一些相同的属性和行为封装在同一个结构中,用来统一对外展示。
这里是使用的processon工具在线画的类图结构,类图分为三个部分,每部分用空隙隔开。
类名类的属性即成员变量 成员变量的表示方式:权限 名称:类型 [= 默认值]类型行为即方法 方法信息的表示方式:权限 名称(参数) [: 返回值类型]其中: 权限中+表示的是public, -表示的是private, #表示的是protected
1.泛化 泛化是类和类之间的继承关系,通常用带空心三角形的直线来表示。下图中,定义了一个基类为People,他拥有name(姓名)和age(年龄)属性,同时有一个run方法,Male和Female类继承与People拥有它的属性和方法,同时还有自己增加的方法。
2.实现 实现关系一般是对接口的实现,使用带三角形的虚线来表示,这把people定义成接口,它拥有一个behave方法,然后通过Male和Female来实现这个接口,并拥有不同的behave行为。
3.组合 组合关系表示的整体由部分构成并且部分是不能单独存在的。例如人是有身体和头部来构成的,身体和头部都不能单独存在,而身体和头部的组合来支持人的正常生活。
4.聚合 聚合关系描述的是一个弱类型的整体和部分的关系,部分离开整体后依赖能够正常行使功能。例如企业运行是由人提供生产资料来运转的,但是企业会有人员流程,人离开了这个企业也可以去其他企业工作。聚合关系的表现方式是一个空心的菱形和实现的箭头。
5.依赖 依赖是一种使用关系,表示一个事物的行为要用到另一个事物来完成,他是一个弱关系,临时性的。通常在方法参数,局部变量,静态方法中用到。依赖关系用虚线的箭头来表示,箭头方向表示被依赖的的一方。这里Driver类的drive方法需要使用到Car。
6.关联 关联关系是一种结构的关系,用于表示类和类之间的平级关系,一般表现为全局变量。一般用实线的箭头来表示。 例如老师和学生之间,学生和课程之间有关联关系,学生和老师之间的关联是双向的,学生跟随老师学习,而老师也带领着学生。学生和课程之间的关联关系是单向的,学生拥有课程,而课程不拥有学生。除此之外,关联关系还有单向的,表示一个类和自己有关系。
自关联类图