Uml 类图

Uml 类图

类名在图的上部分

image-20190530171531219.png

类的属性

在图的中间部分部分

  • +: 表示public

  • -: 表示private

  • #: 表示protected(friendly也归入这类)

类方法

在图的下部分

  • +: 表示public

  • -: 表示private

  • \ #: 表示protected(friendly也归入这类)

  • params 表示参数

  • :之后表示返回类型

类与类之间的关系

泛化关系(generalization)

image-20190530182335810.png

如图所示,designer属于account。有is a的意思,就是designer 是一个账户,但是不仅仅是一个账户,还是一个degisner的账户

实现关系(realize)

实现关系用一条带空心箭头的虚线表示;

image-20190530182412806.png

比如图中,account单独存在没有意义,是一个抽象类。于此同时designer才是一个有account能够实例话的类,是designer的account

聚合关系(aggregation)

聚合关系用一条带空心菱形箭头的直线表示,图中表示team由advitiser组成

image-20190530183158997.png

聚合关系用于表示实体对象之间的关系,表示整体由部分构成的语义;例如一个部门由多个员工组成;

与组合关系不同的是,整体和部分不是强依赖的,即使整体不存在了,部分仍然存在;例如, 部门撤销了,人员不会消失,他们依然存在;

组合关系(composition)

组合关系用一条带实心菱形箭头直线表示,如下图表示asset由task组成;

image-20190530191328875.png

与聚合关系一样,组合关系同样表示整体由部分构成的语义;比如公司由多个部门组成;

但组合关系是一种强依赖的特殊聚合关系,如果整体不存在了,则部分也不存在了;例如, 公司不存在了,部门也将不存在了;

单向关联关系(association)

关联关系是用一条直线表示的;它描述不同类的对象之间的结构关系;它是一种静态关系, 通常与运行状态无关,一般由常识等因素决定的;它一般用来定义对象之间静态的、天然的结构; 所以,关联关系是一种“强关联”的关系;

比如,乘车人和车票之间就是一种关联关系;学生和学校就是一种关联关系;

关联关系默认不强调方向,表示对象间相互知道;如果特别强调方向,如下图,表示account知道authorize,但 authorize不知道account;

image-20190530183815909.png

双向关联关系

与单项关联不通,这里designer知道deal,deal知道designer

image-20190530184551068.png

自关联关系

image-20190530185015725.png

自关联在UML类图中用一个带有箭头且指向自身的直线表示。上图的意思就是Node类包含类型为Node的成员变量,也就是“自己包含自己”。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容