首页 技术 正文
技术 2022年11月23日
0 收藏 594 点赞 3,415 浏览 1245 个字

学习过UML的人都知道,UML之中有九种图和四种关系,今天,我们先来介绍一下这四种关系:

对于我们这些初学者来说,UML之中无非是  关联、依赖、泛化和实现,但是其中,关联和依赖又如何区分?泛化又如何理解?实现有时什么东西呢?

1、 关联关系(Association)

关联关系式一种结构化的关系,是指一种对象和另一种对象有联系。给定关联的两个类,可以从其中的一个     类的对象访问到另一个类的相关对象。关联关系用一条实线表示。

1.1、  聚合关系(Aggregation)

聚合是关联的特例。聚合是表示整体与部分的关系,即has a 关系。聚合关系中的整体和部分是可以分离       的,他们可以具有各自的生命周期,部分可以数据多个整体对象。

1.2、  组合关系(Composition)

组合关系式关联关系的一种特例,他体现的是一种contains a的关系,这种关系比聚合更强。它同样也体现     了整体与部分的关系。此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束。

2、 依赖关系(Dependency)

依赖关系式类与类之间的连接,表示一个类依赖于另一个类的定义。其中一个类元素是独立的,另一个类元     素不是独立的,它依赖与独立的那个类。如果独立的类改变,将影响依赖与它的那个类。

3、泛化关系(Generalization)

泛化关系式一个类(子类、子接口)继承另外一个类(父类、父接口)的功能。子类还可以增加自己的新功     能。继承是类与类或者接口与几口之间最常见的关系之一。

4、实现关系(Realization)

实现关系指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关       系。

讲解阶段:

也许有人会问,那你的依赖和关联有区别吗?

就我自己的理解,其实依赖和关联本来是很难区分开的,因为有依赖就肯定有关联,但是,通过 师傅的讲          解,我也总结道,依赖,其实也是一种使用关系,而关联则是一种拥有关系;就像我图中画的,我拥有一台                电脑和一部手机,那,我和电脑手机之间就有关联关系,而如果我运用自己的电脑上网,用自己的手机打电      
         话,那,我和自己的电脑、手机之间就有依赖关系。

那组合和聚合呢?

   
        组合比聚合要强,对于一个整体来说,如果整体和部分之间存在组合关系,那就表明如果整体缺失了该部
分后就不能够独立存在了,就像雨伞,如果没有了伞面就变成了拐棍儿或者其他东西;而如果没有伞柱呢,他
就 变成了一张能当谁的布而已,但又有谁会教他们雨伞呢?而聚合呢,是指,整体有个部分组成,但是如果缺失了某部分之后,整体照样可以存在(可替换型、分部    
型……),他只是把一类东西放在这,举个例子就是(垃圾场,更着垃圾都有,如果毁灭其中的一种或几种,             那他们照样还是垃圾),同一个道理。
泛化嘛……,在我们这个阶段,简单的来说,可以理解为继承,但是有和继承有不同(具体的还不知道)
暂时到这儿,欲知后事如何,且看下次分解……

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,954
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,479
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,291
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,108
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,740
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,774