`
charliezhang
  • 浏览: 28729 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

类的关系和类图

    博客分类:
  • UML
 
阅读更多

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

 

泛化(generalization):表示is-a的关系,是对象之间耦合度最大的一种关系,子类继承父类的所有细节。在类图中使用带三角箭头的实线表示,箭头从子类指向父类。

 


实现(Realization):在类图中就是接口和实现的关系。这个没什么好讲的。在类图中使用带三角箭头的虚线表示,箭头从实现类指向接口。

 

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

 


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

 

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

 

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

 

聚合和组合的区别:聚合关系是“has-a”关系,组合关系是“contains-a”关系;聚合关系表示整 体与部分的关系比较弱,而组合比较强;聚合关系中代表部分事物的对象与代表聚合事物的对象的生存期无关,一旦删除了聚合对象不一定就删除了代表部分事物的 对象。组合中一旦删除了组合对象,同时也就删除了代表部分事物的对象。

 

多重性(Multiplicity) : 通常在关联、聚合、组合中使用。就是代表有多少个关联对象存在。使用数字..星号(数字)表示。

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    UML类图中的类 抽象类,具体类,主动类等

    在UML(统一建模语言)中,类图是一种重要的模型表示工具,它用来描绘系统中的类、接口以及它们之间的关系。类图中的类扮演着核心角色,它们定义了系统的结构和行为。类可以分为抽象类和具体类,以及主动类和非主动...

    qt5类图-类关系图-类图大全

    QT5的类图,包含了QT的所有的类,以及类之间的关系,非常全面,非常清晰,值得收藏。

    六大UML类图以及关系

    本文将详细介绍UML类图中的六种基本关系:依赖、类属、关联、实现、聚合和组合。 #### 二、依赖(Dependency) **定义**: - 当元素A的变化会影响元素B,但元素B的变化不会反过来影响元素A时,我们说B依赖于A。 - ...

    类图及其关系 (rose)

    类图是面向对象设计中的一个重要工具,用于可视化和文档化系统中的类、接口以及它们之间的关系。在Rose软件中,类图提供了一种强大的方式来表示这些概念。在这个篮球比赛系统的例子中,我们需要识别和定义关键的类,...

    UML类图、类与类间关系文档(UML必看)

    在IT行业中,UML(Unified Modeling Language,统一建模...通过阅读“类与类关系.doc”和“UML类图关系大全.doc”文档,你将能够深化对UML的理解,提高软件设计能力,同时也能更好地应用到实际项目中,提升工作效率。

    UML类图与类的关系详解

    其中,类图(Class Diagram)是UML中最常见且重要的组成部分之一,它主要用于展示系统中类、接口及其之间的静态结构和关系。 类图的基本组成包括: - **类名**:通常位于类的第一行,用于标识类的名字。 - **属性**...

    um类图类图um类图类图

    3. **类的关系**:除了简单的关联外,类图还包括其他复杂关系,如继承(一个类从另一个类派生,继承其属性和操作)、实现(类实现接口,承诺提供接口定义的操作)和依赖(一个类的运行依赖于另一个类,但不直接包含...

    网上书店UML类图建模

    在网上书店系统中,我们可以使用UML类图来描述系统中的类和对象之间的关系,例如,customer类、employee类、Administrator类等,这些类之间的关系可以通过继承、关联、继承等关系来描述。 2.Rose或Visio 建模工具:...

    UML 类图 关系 大全 泛化、关联、依赖等

    UML 类图关系大全是软件开发中一种常用的图形化表示方法,用于描述系统中的类、对象之间的关系。UML 类图关系大全中有多种关系,包括泛化、关联、依赖、聚合、组合等。 1. 关联关系 关联关系是类图中最基本的关系...

    UML类图说明类图关系

    本文旨在深入探讨UML类图中的各种关系类型及其在Enterprise Architect(简称EA)工具中的表现形式,并提供清晰的解释以帮助读者更好地理解和应用这些概念。 #### 二、类图基础 在开始讨论类图中的各种关系之前,...

    uml类图例子

    继承关系是类图中最常见的一种关系,表示一个类继承自另一个类的所有特性和行为。例如,鸟类继承自动物类,这意味着鸟类拥有动物类的所有特性和行为。 实现关系是另一种常见的关系,表示一个类实现了一个接口。例如...

    包图 类图的绘制 包图的绘制 类图和包图的绘制 UML图

    在绘制包图时,我们需要定义类之间的相互关系,并使用 PowerDesigner 的类关系功能来描述这些关系。 通过这次实验,我们了解了类图和包图在UML图中的应用,我们也掌握了使用 PowerDesigner 建立类图和包图的方法。...

    UML类图关系大全

    UML类图作为UML中的一种重要图表类型,主要用于描述系统中类与类之间的关系。本文将详细介绍UML类图中的几种主要关系类型:关联、聚合/组合以及依赖,并通过具体的实例和代码示例来帮助读者更好地理解这些概念。 ##...

    类图和对象图

    ### 类图和对象图 #### 一、面向对象的基本概念:类与对象 在面向对象的分析与设计中,**类**(Class)与**对象**(Object)是最基础的概念。类是对象的抽象,而对象是类的一个具体实例。 1. **类**:类是对一组...

    JDK UML 类图大全

    在JDK中,UML类图可以帮助我们理解和分析Java类库的结构,包括类、接口、继承关系、关联、聚合和组合等。 **类图的基本元素** 1. **类(Class)**: 类图的核心元素,表示具有共同属性、操作和关系的一组对象。在...

    基于UML类图的类之间依赖关系图论问题研究.pdf

    在类图中,每个类由其属性和方法构成,同时还展示了类之间的关系,如关联、聚集、泛化以及依赖等。类图是面向对象系统分析中最基本的元素之一,能够清晰地展示出系统中各个类如何相互作用。因此,对UML类图中类之间...

    图书馆管理信息系统实体类、界面类图

    - Title:书籍类,包含书名、作者、ISBN、类型和书籍OID,以及与预订记录的关系。 - Loan:借阅记录类,记录借阅日期、书籍OID和借阅者OID。 2. 关系: - Reservation与Title之间的关系是多对一,一个书籍可以有...

    UML中类图实例讲解关系

    UML类图是UML中的一种重要组成部分,用于描述类和对象之间的关系。 1.UML类图的基本组成部分 UML类图由三个部分组成:类名、类特性和类操作。类名表示类的名称,如果是抽象类就用斜体显示。类特性是类的字段和属性...

    从java代码逆向生成序列图和类图

    使用 IBM Rational Software Architect 进行逆向工程可以生成 UML 类图和序列图,但是存在一些限制。作者详细说明了克服这些限制的技术,并阐述了从 Java 类中产生像 UML 类和序列图这样的高层抽象。 软件结构师、...

Global site tag (gtag.js) - Google Analytics