精华内容
下载资源
问答
  • uml依赖
    千次阅读
    2019-07-10 19:19:45

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

     

    1.       泛化(Generalization)

    【泛化关系】:是一种继承关系, 表示一般与特殊的关系, 它指定了子类如何特化父类的所有特征和行为. 例如:老虎是动物的一种, 即有老虎的特性也有动物的共性.

    【箭头指向】:带三角箭头的实线,箭头指向父类

     

     

    2. 实现(Realization)

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

    【箭头指向】:带三角箭头的虚线,箭头指向接口

     

    3. 关联(Association)

    【关联关系】:是一种拥有的关系, 它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子

    关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。

    【代码体现】:成员变量

    【箭头及指向】:带普通箭头的实心线

    更多相关内容
  • 2. UML图中的各种关系2.1 依赖 1. 什么是UML图? UML-Unified Modeling Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。 UML...

    1. 什么是UML图?

    UML-Unified Modeling Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。UML的定义包括UML语义和UML表示法两个元素。
    UML是在开发阶段,说明、可视化、构建和书写一个面向对象软件密集系统的制品的开放方法。最佳的应用是工程实践,对大规模,复杂系统进行建模方面,特别是在软件架构层次,已经被验证有效。统一建模语言(UML)是一种模型化语言。模型大多以图表的方式表现出来。一份典型的建模图表通常包含几个块或框,连接线和作为模型附加信息之用的文本。这些虽简单却非常重要,在UML规则中相互联系和扩展。
    更多介绍点击链接了解:
    https://baike.baidu.com/item/UML%E5%9B%BE/6963758?fr=aladdin

    2. UML图中的各种关系含义

    2.1 依赖

    2.1.1 简单理解及画法

    这个依赖,通俗一点就是:人要依赖氧气、水、食物......才能生存,需要依赖氧气、水、食物......,人要依赖很多东西才能生存,如下图所示,氧气只是人依赖的一部分,如下图所示,画法如下图所示
    在这里插入图片描述

    在这里插入图片描述

    2.1.2 那么在UML中的依赖是怎样的呢?

    其实和上述所描述的差不多,如下图,类A依赖类B,那么类A中一定有B的存在,这个存在可能依赖关系在 Java 或 C++ 语言中体现为局部变量(函数参数等)、方法的参数或者对静态方法的调用,是组成类A的一部分。缺少了类B,类A就实现不了一部分功能了,如人缺少了手,就不能打游戏了,所以类A依赖类B
    依赖方要用虚线剪头指向被依赖的类,如下图所示
    在这里插入图片描述

    2.1.3 实战中UML图的画法和表现及相应的代码

    如在我写的一个项目中,类UserEventHandler依赖类LoginReqEv,类LoginReqEv是类UserEventHandler中一个函数的变量
    补充一下,-号在这个变量或者函数的前面表示它是这个类私有的(private),+号表示是公有的(pubulic),#表示是保护的(protected),UML类图,和代码图如下图所示
    在这里插入图片描述

    在这里插入图片描述

    2.2 关联

    2.2.1 简单理解,以及在UML中的画法

    A关联于B,则B体现为A的全局变量(成员变量),反之,关联分为双向关联和单向关联,被关联方被实心箭头所指,画法如下图所示,其中双向关联有两种画法,还有一种特殊的自关联,一般在单例模式中出现,我就不介绍了。
    在这里插入图片描述

    2.2.2 实战中UML图的画法和表现及相应的代码

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    2.3 聚合

    2.3.1 简单理解

    聚合的关系比关联要强,聚合和组合比较像,都有关联的特征;
    在聚合关系中,整体与部分之间是可分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享;
    组合的生命周期一样,才叫组合嘛!
    聚合换一种话说,成员类是整体类的一部分,即成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在
    比如有一个类A和一个类B,如果B是A的聚合(A是整体,B是部分),要满足如下特征:

    1. B是A的指针型成员变量
    2. A和B有具有各自的生命周期,当A虚构时,即生命周期结束时,B不受影响(整体解散时,部分不受影响)
    

    我查阅了很多资料,发现聚合是一个强关联,它肯定有关联的特征(成员变量中的指针型成员变量),也有自己的特征,各有各的生命周期。只有指针型成员变量才会有自己的独立分配内存空间,当整体不存在时,指针型成员变量还存在,但是有一种特殊情况,就是整体的虚构函数中,如果把指针型成员变量delete回收内存的话,指针型成员变量就随着整体的消逝而灭亡了,这就属于组合了,如下图1所示,这种情况是聚合。如下图2所示,这种情况是组合;

    所以是聚合还是组合,要看具体的代码是怎么写了
    

    在这里插入图片描述
    在这里插入图片描述

    2.3.2 实战中UML图的画法和表现及相应的代码

    画法,空心菱形加实心箭头,指向成员变量对应的类,代码如上图一所示,UML图的画法如下图所示
    在这里插入图片描述

    2.4 组合

    2.4.1 简单理解

    组合换一种话说,成员类是整体类的一部分,即成员对象是整体对象的一部分,但是成员对象可以脱离不可以脱离整体,整体消失时,部分也随之消失一般在整体虚构时,部分也虚构了(普通成员变量)或者回收内存了(指针成员变量)
    有以下特征:

    1. 属于整体的一部分,即为整体的成员变量
    2. 生命周期随着整体的虚构(消失)而消失,生命周期相同
    
    如果是指针成员变量的话,它在整体的其他函数方法中回收,或者没有在整体的虚构函数中回收,它就不属于组合了。
    

    2.4.2 实战中UML图的画法和表现及相应的代码

    画法,实心菱形加实心箭头,指向成员变量对应的类,图和相应的代码如下
    在这里插入图片描述

    在这里插入图片描述

    画图不易,觉得写得不错的,给个赞和收藏或者关注哦在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • UML】关联和依赖

    万次阅读 多人点赞 2018-09-27 09:03:17
    UML四大关系中,包括:泛化,实现,关联,依赖。 泛化就是我们在面向对象中提到的继承,而实现则更多的体现在类和接口之间的关系。 关联和依赖相对于上边两个关系,则表现的不是很容易理解,所以我们今天来深入...

    前言

    UML四大关系中,包括:泛化,实现,关联,依赖。

    泛化就是我们在面向对象中提到的继承,而实现则更多的体现在类和接口之间的关系。

    关联和依赖相对于上边两个关系,则表现的不是很容易理解,所以我们今天来深入学习一下。

     

    关联

     

    它表示类与类之间的连接,它使得一个类知道另一个类的属性和方法。

    关联可以用单向箭头表示单向关联,使用双箭头表示双向关联(不建议)。

    关联是类与类,类与接口之间的一种比较强烈的关系,它不是临时性的,而是长期性的。

     

    代码体现

    1.B作为A的属性出现在了A中

    2.关联类A引用了被关联类B的全局变量

     

    它的两个特例

    1.聚合:空心菱形箭头

    它也是关联关系的一个特例(has-a),但是此时整体和部分是分离的,有各自的声明周期。

    代码体现:通过实例变量来体现

    2.组合:实心菱形箭头

    是关联关系的一个特例(contain-a),比聚合关系更强,它和聚合最大的区别就是:整体和部分是不可分的(就好比人和氧气一样!)

    代码体现:它的体现在代码段和聚合并没有很大的区别,唯一的区别就是:部分和整体的声明周期是一致的。

                   

     

    依赖

     

    它表示类与类之间的连接,表示一个类依赖于另外一个类的定义,方向是单向的。(可以简单理解为:我吃饭用到筷子,所以在吃饭这件事上,我依赖于筷子,但是我不吃饭我就不依赖于它了!


    它具有偶然性,临时性,而且这种关系非常弱。但是类B(筷子)的变化会影响类A(我)。(如果没有筷子,我吃饭就会受到影响

    表示方法:虚线箭头

    它分为四种:

    1.精化

    2.跟踪

    3.包含

    4.延伸

     

    代码体现:

    1.A方法的参数是B(耦合)

    2.A方法的参数是B的属性(紧耦合)

    3.A方法中实例化了B

    4.A方法的返回值是B

     

    关系强弱排序:组合>聚合>关联>依赖

     

    虽然知识点不是很多,但是博主感觉都是挺重要的点。

    想要深入的理解这种关系,我们还是要多去实践,在代码中体会它们的异同,纸上学来终觉浅,绝知此事要躬行!加油!

    感谢大家认真阅读和点赞鼓励!有什么问题欢迎大家和我交流!

     

    展开全文
  • 二、类图中属性的表示方式三、类图中方法的表示方式四、类图中类关系的表示方式1、依赖(Dependence)2、关联(Association)3、聚合(Aggregation)4、组合(Composition)5、泛化(Generalization)6、实现...


    一、UML是什么?

    UML,即Unified Modeling Language,翻译的意思是统一建模语言,是一种为面向对象系统的产品进行说明、可视化和编制文档的建模工具,独立于任何程序设计语言,包括Java语言。

    UML描述和反映是事物的实体、性质、关系、结构、状态和动态变化过程,同时作为建模语言,它也有着严格的语法和语义规范。

    UML采用一组图形符号来描述软件模型,这些图形符号具有简单、直观和规范的特点,开发人员学习和掌握起来比较简单。所描述的软件模型,可以直观地理解和阅读,由于具有规范性,所以能够保证模型的准确、一致。

    在UML类图中,类使用包含类名、属性(field) 和方法(method) 且带有分割线的矩形来表示。


    二、类图中属性的表示方式

    类属性表示方式:可见性 名称 :类型 [ = 缺省值]
    []中括号中的内容表示是可选的

    举例:下图表示一个Employee类,它包含name,age和email这3个属性,以及modifyInfo()方法。
    在这里插入图片描述

    那么属性/方法名称前加的加号和减号是什么意思呢?它们表示了这个属性或方法的可见性,UML类图中表示可见性的符号有三种:

    • + :表示public

    • - :表示private

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


    三、类图中方法的表示方式

    类方法表示方式:可见性 名称(参数列表) [ : 返回类型]
    []中括号中的内容表示是可选的

    举例:在下图的Demo类中,定义了3个方法:
    在这里插入图片描述

    • public方法method1接收一个类型为Object的参数,返回值类型为void
    • protected方法method2无参数,返回值类型为String
    • private方法method3接收类型分别为int、int[]的参数,返回值类型为int

    四、类图中类关系的表示方式

    在软件系统中,类并不是孤立存在的,它们之间存在各种关系。根据类之间的耦合度,可以从弱到强进行排列,大致有以下六种,如图所示:
    在这里插入图片描述

    1、依赖(Dependence)

    含义:体现了类之间的弱作用关系,是一种临时性的使用关系,通常用虚线+箭头表示。

    举例:依赖关系是类之间最弱的关系,比如,类A的一些方法参数中使用了类B的实例;类A的一些方法逻辑中调用了类B的方法或变量等等。

    在这里插入图片描述

    2、关联(Association)

    含义:体现了类之间的强作用关系,通常用实线或实线+箭头表示,这里的关联关系指的是一般关联关系,后面的聚合和组合也属于关联关系。

    举例:关联关系是类之间的引用关系,生活中的常见,比如有:手机和充电线,老师和学生,生产者和消费者等。可以通过成员变量来实现关联关系,比如类A中使用了类B的对象引用,A和B之间就是一种关联关系。

    类型:一般关联关系又可以分为单向关联、双向关联、自关联,画图表示。
    在这里插入图片描述

    3、聚合(Aggregation)

    含义:体现了类之间的强作用关系,也属于关联关系的一种,是整体和局部之间的关系,是 has-a 的关系,通常用实线+虚心菱形箭头表示。

    举例:聚合关系强调了整体和局部的关系,比如学校和教师,工厂和工人等,注意的是局部可以独立于整体而存在,比如工厂没了但工人还是可以存在的!通过成员属性来实现聚合关系。

    在这里插入图片描述

    4、组合(Composition)

    含义:体现了类之间的强作用关系,也属于关联关系的一种,也是整体和局部之间的关系,是 cxmtains-a 的关系,通常用实线+实心菱形箭头表示。

    举例:组合关系是一种耦合度更高的聚合关系,整体对象可以控制部分对象的生命周期,部分对象不能脱离整体对象而存在,比如电脑和CPU,如果CPU没了,电脑就失去了基本的运算能力等同于电脑报废。

    在这里插入图片描述

    5、泛化(Generalization)

    含义:体现了类之间的继承关系,是一种耦合度最高的关系,是 is-a 的关系,通常用实线+空心三角箭头表示。

    举例:泛化关系强调了一般与特殊的关系,通过Java的类继承机制实现类之间的泛化关系,比如:手机工厂,与华为手机工厂,小米手机工厂之间的关系。

    在这里插入图片描述

    6、实现(Realization)

    含义:体现了接口和类之间的关系,通常用虚线+空心三角箭头表示。

    举例:实现关系,通过Java的实现机制实现的,比如:手机工厂接口,与华为手机工厂实现类,小米手机工厂实现类之间的关系。

    在这里插入图片描述


    结尾

    • 感谢大家的耐心阅读,如有建议请私信或评论留言。
    • 如有收获,劳烦支持,关注、点赞、评论、收藏均可,博主会经常更新,与大家共同进步
    展开全文
  • UML - 依赖与关联关系

    2018-09-18 20:14:47
  • java之UML系统依赖

    千次阅读 2020-02-23 16:00:25
    java之UML系统部署图
  • 1.继承,继承包括两种,泛化和实现 1.1 A继承了B(泛化,继承非抽象类) 1.2 A实现了B(实现,继承抽象类) 2.聚合关系(A聚合到B上,或者...依赖关系(A依赖于B,他描述一个对象在运行期间会用到另一个对象的关系)
  • UML类图有6种关系,泛化,实现,组合,聚合,关联,依赖,今天主要是说说依赖与关联。 网上图很多,我就不自己做图了,直接站在巨人的肩膀用网络上的图了。 1.依赖,用如下图来表示: 依赖是A的
  • 在实现设计模式之前,首先来复习以下UML中的五种关系图 <1>依赖 依赖关系用虚线加箭头表示,如图所示: 上图表示:Animal类依赖于Water类(动物依赖于水)。 依赖是类的五种关系中耦合最小的一种关系。因为...
  • UML六种箭头的含义2. UML六种分类的实例3. 使用腾讯文档里面的流程图里面选UML就行了 1. UML六种箭头的含义 2. UML六种分类的实例 下面的例子中, Person是抽象类, father和mather继承person类, son是派生类, 继承...
  • 文章目录UML 基本介绍UML说明类的UML表示UML类图中的一些符号和含义图表1、依赖关系(Dependence)2、泛化(继承)关系(generalization)3、实现关系(Implementation)4、关联关系5、聚合关系(Aggregation)6、...
  • UML类图中四大关系详解

    千次阅读 2021-03-16 10:51:46
    本文和大家重点讨论一下UML类图的几种关系,UML类图中主要有”关联关系(association)“、”聚合关系(aggregation)“、”合成关系(compostion)“和”依赖关系(dependency)“等几种。UML类图的几种关系UML类图中的”...
  • UML类图--依赖关系

    千次阅读 2018-10-26 01:39:51
    依赖--Dependency:是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖. UML展示: 箭头指向:带箭头的虚线,指向被使用者 代码展示: // 人类-类 public class Humen { ...
  • 众所周知,UML类图分为三种关系: 继承(实现)、依赖、关联。 其中关联又分为:组合和聚合; 共性:都是指两个类之间的耦合强弱,依赖<关联<继承。 首先我们介绍耦合最低的依赖关系。 依赖: 我认为的依赖关系...
  • UML类图依赖与关联的区别

    万次阅读 2018-10-28 11:13:32
     依赖 &gt; 关联 &gt; 聚合 &gt; 组合。  类和类之间八竿子打不着那就是没关系,这个没啥歧义。    依赖(dependency)    可以简单的理解,就是一个类A使用到了另一个类B,而这种使用关系是...
  • 3, 依赖(箭头+虚线)(虚线表示依赖弱) 类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是B类的变化会影响到A;比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖;...
  • UML】关系之依赖关系

    热门讨论 2017-09-24 21:00:35
    依赖关系是指其中一个模型元素是独立的,另一个模型不是独立的,它依赖于独立的模型元素,如果独立的模型元素改变了,那么将影响依赖于它的模型。
  • 1. 泛化(Generalization) 泛化表示一般和特殊的关系。在UML中,使用空心的三角形表示。 上面类图中,动物和小鸟是一般和特殊关系。 2. 实现(Realization) ...在UML中,依赖关系使用带虚线的箭头表示。
  • UML中关联(association)关系和依赖关系比较难以让人理解。今天查了一下《UML参考手册》。归纳如下 关联(association) 如果几个类元的实例之间有联系,那么这几个类元之间的语义关系即关联。关联描述了系统中对象...
  • UML中,依赖关系用带箭头的虚线表示,由依赖的一方指向被依赖的一方 例子: 驾驶员开车 在系统实现阶段,依赖关系通常通过三种方式来实现: 将一个类的对象作为另一个类中方法的参数 在一个类的方法中将另一...
  • 目录 类图关系 概述 面向对象是符合人们对现实世界的思维模式,利用面向对象设计,特别是采用各种设计模式来解决问题时,会设计多个类,然后创建多个对象,一个设计良好的类,应该是兼顾信息和行为并且高...依赖关...
  • 实现 矩形表示法 使用空心三角形+虚线 棒棒糖表示法 使用实线表示 依赖 对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。 依赖关系...
  • 由于经常需要画uml图,在这里记录以下类与类之间的关系 类与类之间的j基本关系主要分为: 依赖(Dependency) 泛化(Generalization) 实现(Interface Realization) 关联(Association) 聚合(Aggregation) 组合...
  • UML常见关系图,依赖、关联等

    千次阅读 2016-07-24 11:09:44
    UML常见关系,依赖、关联首先类之间的关系从宏观上可以分为:关联、依赖、继承(泛化),而其中关联又有两种特例:聚合和组合,不过在UML2.X中聚合和组合合成一种关系了。 从使用的频率来看,关联(包括聚合和组合...
  • UML中,依赖和关联经常无法进行区分,在类图中,不知道什么时候使用依赖,什么时候使用关联,来定义两个类之间的关系。 今天看了一篇帖子,对这两种关系做了比较生动的区分 依赖指的是两个类之间发生的关系输入...
  • UML中类与类,已经类与接口,接口与接口的关系有: 泛化(generalization),关联(association),依赖(dependency),实现(realization)这几种。 泛化(generalization)关系时指一个类(子类、子接口)继承...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 67,455
精华内容 26,982
关键字:

uml依赖

友情链接: 越南ERP-Unicode.rar