首页 > 其他分享 >uml各图形图标表示的含义

uml各图形图标表示的含义

时间:2023-12-07 20:55:23浏览次数:33  
标签:关系 聚合 泛化 关联 箭头 uml 图形 属性 图标

UML 有几种关系图标:泛化(继承),实现,依赖,关联,聚合,组合


泛化(继承) B——▷A B 类作为 A 类的子类存在。
实现 B------▷A B 类实现 A 接口。
依赖 A------>B B 类作为 A 类某个方法的参数,表示A想做某些事情需要依赖 B,不然做不成。
关联 A——>B(单向) B 类作为 A 类的属性存在,语义上 A 类和 B 类的地位或水平相等。
A—— B(双向) B 类作为 A 类的属相存在, A 类作为 B 类的属性存在,语义上 A 类和 B 类的地位或水平相等。

聚合 A♢——>B B 类作为 A 类的属性存在,语义上 B 类可作为 A 类的一部分,这个关系可有可无,是A has--a B 的关系,如房子(A),桌子(B)
组合 A♦——>B B 类作为 A 类的属性存在,语义上 B 类是 A 类的一部分,这部分必须有,是 A contain--a B 的关系,如(人),大脑(B)。

一般情况下,继承和实现比较简单,就是其他几个关系会有点小复杂。

UML类图符号

        在UML类图中,常见的有以下几种关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)

1、泛化(继承)

【箭头指向】:带三角箭头的实线,表示继承一个基类,B类继承A类。

【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。

【泛化例子】:老虎是动物的一种,既有老虎的特性也有动物的共性。

2、实现

【箭头指向】:带三角箭头的虚线,箭头指向接口,表示C类实现接口的定义。

【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现。

3、关联

【箭头指向】:带普通箭头的实线,指向被拥有者。

【关联关系】:是一种拥有的关系,它使一个类知道另一个类的特征和行为,关联分为单项关联和双向关联两种;双向关联可以用俩头带箭头的实现表示,也可以不要箭头。

【3.1】、单向关联:仅能从一个类访问到另一个类(前者的属性中有后者),B类单项关联A类(B中有属性a为类A的对象);如:学生与课程的单向关联。

【3.2】、双向关联:两个类之间能相互访问(两个类的属性中都有对方),B类关联A类(B中有属性a为类A的对象),A类关联B类(A中有属性bs为Set,Set包含B的对象),A和B是1对n(n>0)的关联;如老师与学生的双向关联。

【3.3】、自身关联:... ...

【代码体现】:成员变量

4、聚合

【箭头方向】:带空心菱形的实线,菱形指向整体;Wheel类扮演wheels角色,聚合4个到Car对象里面去。

【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如Car和Wheel是整体与部分的关系,Wheel离开Car仍然可以存在,并不随Car的创建而创建,销毁而销毁。

【代码体现】:成员变量

【聚合PK关联】:聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。

5、组合

【箭头方向】:带实心菱形的实线,菱形指向整体;Company对象完全由Department对象组成。

【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如Company和Department是整体与部分的关系,没有Company就没有Department,Department随Company的创建而创建,销毁而销毁。

【代码体现】:成员变量

【组合PK关联】:组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。

6、依赖

【箭头指向】:带箭头的虚线,指向被使用者,

【依赖关系】:是一种使用关系,表示类之间的调用关系,即一个类的实现需要另一个类的协助,所以尽量不使用互相依赖。

【代码体现】:如果类A访问类B的属性或者方法,或者类A负责实例化类B,那么可以说类A依赖类B(局部变量、方法的参数或者对静态方法的调用)。

【依赖PK关联】:和关联关系不同,无须再类A中定义类B类型的属性。

各种关系的强弱顺序

泛化 == 实现 > 组合 > 聚合 > 关联 > 依赖

下面这张UML图,比较形象地展示了各种类图关系 :

标签:关系,聚合,泛化,关联,箭头,uml,图形,属性,图标
From: https://www.cnblogs.com/jy-all-bug/p/17883923.html

相关文章

  • uml总结
    一、面向对象与UML1、面向对象方法一种运用面向对象的软件构造概念和原则(类、对象、抽象、封装、继承、多态、消息)来构造软件系统的开发方法2、面向对象特征抽象、封装、继承、多态3、UML定义一种标准的图形化建模语言,是面向对象分析与设计的一种标准表示4、UML组成基本构造......
  • UML所有图的内容阐述
    UML有多种类型的图,每一种图都有其特定的目的和特点。以下是UML各种图的特点和内容:一类图(ClassDiagram):类图是UML中最常用的图形表示法,用于描述系统中的类、接口、属性和方法之间的关系。通过类图可以明确类之间的关系,例如继承、关联、聚合和组合等。属性是类的特征,描述了类所......
  • UML九个常用图的详细总结
    UnifiedModelingLanguage(UML)是一种用于软件系统设计和建模的标准化语言。它包括多种图表,每种图表都有不同的用途。以下是UML中九个常用图的详细总结:1.用例图(UseCaseDiagram):目的:描述系统与外部实体(称为参与者)之间的功能交互。元素:参与者、用例、关系(关联、包含、扩展)......
  • uml1500
    1.用例图用例图是UML中最常见的图之一,它主要用于描述系统的功能需求。用例图中包含了参与者(Actor)和用例(UseCase)两个主要元素。参与者是与系统交互的外部实体,而用例则表示系统的功能。画法: 用例图的画法相对简单,通过椭圆形表示用例,人形图标表示参与者。通过实线箭头表示参与者......
  • uml建模分析
    UML:统一建模语言(UnifiedModelingLanguage)UML是非专利的第三代建模和规约语言是用于说明可视化构建和编写一个正在开发的面向对象的软件密集系统的制品的开放方法UML展现了一系列最佳工程实践这些最佳实践在对大规模复杂系统进行建模方面特别是在软件架构层次已经被......
  • UML总结
    当然,我将为每一种UML图提供详细的概述。用例图:1.目的:用例图描绘了外部参与者与系统之间的交互。2.组成部分:3.参与者:代表与系统交互的用户或实体。4.用例:显示系统对参与者交互的响应中执行的功能或操作。5.用途:主要用于了解系统要求和用户与系统的交互。类图:6.目的:类图通过展......
  • uml九图总结
    Uml里一共有着九种图形,从视图的状态来分分成两种,静态视图和动态视图,静态视图分为类图,对象图,包图,部署图,动态视图分为用例图,顺序图,协作图,状态机图和活动图。类图描述系统的静态结构,包括属性和方法,它是对系统中类的抽象描述,属性是描述物体的特征或者状态他,他通常被定义为一个名字-值......
  • 12.7课堂任务uml学习心得
    UML是一种用于描述、设计和建模软件系统的标准化语言。学习UML有助于更好地理解软件系统的结构、行为和组成,提高沟通与协作效率。以下是我关于UML学习的心得体会:1.掌握基本概念:学习UML前,首先要了解类、对象、接口、关系等基本概念。这些概念在UML中具有重要的意义,掌握它们有助......
  • uml九图
    原文:https://blog.csdn.net/u012500848/article/details/94490361UML(UnifiedModelingLanguage)统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。UML是在开发阶段,说明、可视化、构建和书写一个面向对象......
  • UML九个常用图总结
    用例图(UseCaseDiagram)是UnifiedModelingLanguage(UML)中的一种图表类型,用于描述系统的功能需求和系统与外部实体(称为参与者)之间的交互。以下是用例图的一些关键元素和说明:1.参与者(Actors):2.定义:表示与系统交互的外部实体,可以是人、其他系统或者外部组件。3.符号:通常用简单的......