UML知识点整理

来源:互联网 发布:java 抽象类继承接口 编辑:程序博客网 时间:2024/05/28 15:58

简介

UML主要知识点都是围绕类图以及类的关系。

类图

类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。

类图的构成

类名、属性、方法

类的关系

有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。

泛化(generalization)

表示is-a的关系,是对象之间耦合度最大的一种关系,子类继承父类的所有细节。直接使用语言中的继承表达。在类图中使用带三角箭头的实线表示,箭头从子类指向父类。
比如 动物——老虎
这里写图片描述

实现(Realization)

在类图中就是接口和实现的关系。这个没什么好讲的。在类图中使用带三角箭头的虚线表示,箭头从实现类指向接口。
比如刷子(接口)——笔刷
这里写图片描述

依赖(Dependency)

对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。一个类调用被依赖类中的某些方法而得以完成这个类的一些职责。在类图使用带箭头的虚线表示,箭头从使用类指向被依赖的类。
人——手机
这里写图片描述

关联(Association)

对象之间一种引用关系,比如客户类与订单类之间的关系。这种关系通常使用类的属性表达。关联又分为一般关联、聚合关联与组合关联。后两种在后面分析。在类图使用带箭头的实线表示,箭头从使用类指向被关联的类。可以是单向和双向。
这里写图片描述

聚合(Aggregation)

表示has-a的关系,是一种不稳定的包含关系。较强于一般关联,有整体与局部的关系,并且没有了整体,局部也可单独存在。如公司和员工的关系,公司包含员工,但如果公司倒闭,员工依然可以换公司。在类图使用空心的菱形表示,菱形从局部指向整体。
这里写图片描述

组合(Composition)

表示contains-a的关系,是一种强烈的包含关系。组合类负责被组合类的生命周期。是一种更强的聚合关系。部分不能脱离整体存在。如公司和部门的关系,没有了公司,部门也不能存在了;调查问卷中问题和选项的关系;订单和订单选项的关系。在类图使用实心的菱形表示,菱形从局部指向整体。
这里写图片描述

工作时一般使用Visio通过UML建模。Visio为建模提供了各个类型的支持。

用例图

在开发项目的早期阶段,使用用例图 (用例:在用例图中,当主角使用系统来完成某一进程时所发生的一组事件的表示方式。通常,用例是相当大的进程,而不是单个步骤或事务。)来描述实际活动和动机。可以在随后的各个阶段对该用例图进行细化,以反映用户界面和设计细节。
这里写图片描述

静态结构图

使用静态结构图 (静态结构图:显示模型的静态结构的图表;也就是存在的元素(例如类和类型)、这些元素的内部结构及其相互关系。)来创建概念图或类图,概念图用于表示实际概念以及概念之间的关系,类图用于将软件系统分解为各个部分。
这里写图片描述
要将特性 (特性:类所含的数据定义。类的结构由其特性加以说明。特性的默认语法为:可见性名称:类型表达式=初始值 {属性字符串})、操作 (操作:可以要求执行某个类的实例的服务。类的行为由一组操作表示。每一操作均具有一个名称和一组参数。)和其他属性添加到类 (类:在静态结构图中,具有类似的结构、行为和关系的对象集。类在类(静态结构)图中声明,代表所建模的系统中的概念。)形状,请双击该形状,打开“UML 类属性”对话框。

双击某个关联可以添加修饰,如多重性 (多重性:可参与到特定关系中的对象个数,它用单个数字或从下限到上限的范围来表示。最常见的多重性是 1、*(表示 0..无穷大)和 0..1。)和导向性 (导向性:从多边形到点,导向性指示可从多边形获知关于其所有点的信息,但不能从点上获知关于多边形的信息。在关联上,导向性用箭头来指示。)。

除了此处所示的名称和类型外,特性还可以包括可见性 (可见性:一个元素对另一个元素可见或引用另一个元素的能力。如果一个元素要向另一个元素发送消息,后者对于前者必须是可见的。),这是一个初始值;特性还可指定范围是类还是实例。

如果要传达详尽的编程规范,则需要在图表中完整定义操作的参数 (参数:可以更改、传递或返回的未绑定变量。参数可以包括通信的名称、类型和方向。参数用于指定操作、消息、事件和模板等。)。

0 0
原创粉丝点击