UML类图 入门介绍

什么是UML

1、UML : Unified modeling language : 统一建模语言。
  是一种用于软件系统分析和设计的语言工具,它用于帮助软件开发人员进行思考和记录思路的结果。
2、UML 本身是一套符号的规定,就像数学符号和化学符号一样,这些符号用于描述软件模型中的各个元素和他们之间的关系。
  比如 类、接口、实现、繁华、依赖、组合、聚合等。

UML 类图

类图 是 描述 类 与 类 之间关系的图。
1、用于描述 系统中的 类本身的组成、类之间的各种关系;
2、类之间的关系 :依赖、泛化(继承)、实现、关联、聚合、组合。
3、类图中 +号 表示 公有属性、 -号表示 私有属性、#号表示 受保护属性、/ 表示静态成员。

下面 重点看一下 这六种关系 和 对应的方式方式。

类图-依赖关系(Dependence)

【定义】:一个类的变化,会影响另一个类的使用或实现。
       只要是在类中用到的其他的类,那么他们之间就存在依赖关系。
       如果没有对方,就连编译都通过不了。
       1)类的成员变量 是 另一个类的对象;
       2)类的方法的参数 是 另一个类的对象;
       3)类的方法的返回值 是 另一个类的类型;
       4)类的方法中 使用到了 另一个类。
【符号】:一条带箭头的虚线,箭头指向被依赖的类。
【举例】:一个类的方法参数中使用到了另一个类的对象。

Person 类 中 依赖 IDCard 类。
现实含义 : IDCard 是身份证类,Person 是 公民类。每一个公民都有一个身份证信息。

在这里插入图片描述

类图-泛化(Generalization)

【定义】:泛化关系 就是 继承关系。
    如果 A类 继承了 B类,那么 A 和 B 就存在泛化关系。
【符号】:一条 有空心三角形箭头的 实线,指向 父类。
【举例】:一个类继承了另一个类。

在这里插入图片描述

类图-实现关系(Implementation)

【定义】:实现关系 就是 接口 和 实现类 之间的关系。
     如果 B类 实现了 接口 A,则二者之间就是 实现关系。
【符号】:一条 有空心三角形的虚线,指向 接口。
【举例】:一个类,实现了 一个接口。

在这里插入图片描述

类图-关联关系(Association)

【定义】:关联关系 用于表示 不同类之间的一种结构化的关系,描述了对象之间是如何相互作用的。
   (是依赖关系的特例)
    1、角色名称 : 可以在关联的两端 标注 名称用于区分理解;
    2、多重性 :定义了一个类的对象可以与另一个类的多少个对象进行关联,写在关联线的两端:
       【1】 : 表示只有1个;
       【0..1】 :  表示 0个 或 1个;
       【0..*】 或【*】 :表示 0个 或 多个;
       【1..*】: 表示 1个 或 多个。
    3、导航性 (种类):
    	【单向关联】:只有从一个类 到 另一个类单方向 的关联;
    	【双向关联】:两个类互相都可以访问对方;
    	【自关联】:一个类与其自身之间的关联。
【符号】:一条 实线 ,如果需要指定关联的方向,可以添加箭头,箭头指向被依赖的类。
【举例】:一个人可以有多辆车。

在这里插入图片描述

类图-聚合关系(Aggregation)

【定义】: 表示 整体 和 部分 的关系,且 整体 与 部分 是可以分开的,部分对象可以独立存在。
    (是关联关系的特例)
    1、整体和部分之间是一种松散的关联,整体不存在了,部分 仍然可以独立存在。
    2、部分对象不是由整体对象创建的,而是可以在外部创建后添加到整体中。
    3、多重性:一个整体可以包含多个部分;一个部分可以参与多个整体。
    4、导航性:通常情况下是单项的,由 整体到部分。
【符号】: 一条 带有 空心菱形箭头 的 实线,箭头指向整体类。
【举例】:一个汽车 有  四个轮胎;汽车 如果报废了,但是 轮胎还可以继续给别的车用。

在这里插入图片描述

类图-组合关系(Composition)

【定义】:表示 整体与部分的关系,但是 整体与部分不可以分开。
    1、部分对象的生命周期完全依赖于整体对象,整体对象被销毁,则部分对象也会被销毁;
    2、独占性 :部分对象只能属于一个整体对象,不可以共享给其他整体对象。
    3、多重性 :部分对象的多重性只能是 【0...1】,表示 只能属于一个整体。
    4、导航性 :通常是单项的,只能从整体到部分。
【符号】:一条 带有实心菱形箭头的实线,箭头指向整体。
【举例】:一个房子有多个房间。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值