UML类图

一张图掌握类关系符号

请添加图片描述

六大关系举例

依赖关系

  • 介绍
    • 在类中用到其它类,就存在依赖关系;如果没有其它类,该类无法通过编译
  • 依赖的情况(依赖其它类)
    • 类中用到对方
    • 是类的成员属性
    • 是类中方法的返回类型
    • 是类中方法的参数类型
    • 在方法中使用到
  • 总结
    • 依赖是一种比较大范围的关系,关联关系、泛化关系、实现关系也属于依赖关系
    • 我们也可以将关联关系、泛化关系、实现关系等表示为依赖关系,但一般不这么做

关联关系

  • 介绍
    • 实际是类与类之间的联系
    • 依赖关系的特例
  • 种类
    • 单向关联(单向箭头黑线)
      • A类中声明了B类
      • private B b;
    • 双向关联(无箭头的黑线)
      • A类中声明了B类,B类中声明了A类
      • A类:private B b;
      • B类:private A a;
    • 自关联(单向箭头指向自己)
      • A类中声明了A类

泛化(继承)关系

  • 介绍
    • 泛化关系实际就是继承关系
    • 依赖关系的特例
  • 总结
    • 只要B类继承了A类,那么AB类存在泛化关系,B继承A

实现关系

  • 介绍
    • 实现关系实际就是实现接口
    • 依赖关系的特例
  • 总结
    • 只要B类实现了A接口,那么就存在实现关系,B实现A

聚合关系

  • 介绍
    • 聚合关系表示整体和部分的关系,整体和部分可以分开
    • 关联关系的特例
    • 具有关联的导航性与多重性
  • 例子
    • 聚合关系一般是:声明类但未创建对象,即在A类中B b;
      • 此时AB类存在聚合关系,注意空心菱形指向A类
    • 如果声明时创建了对象,则是组合关系B b = new B();
  • 总结
    • 一般情况下聚合关系是 在类中声明其它类但没有直接创建,通过set方法才能设置(或者其它方式);即我们在创建A类时,它里面使用的B类不会随之直接创建,而是需要后续的操作才会有B类
    • 聚合关系与组合关系对比起来看更容易理解

组合关系

  • 介绍
    • 整合和部分的关系,整体与部分不可分开
    • 如果整体删除,那么部分也会随之一起删除
  • 总结和例子
    • 在A类中声明B类并且同时创建B类的对象,此时就存在组合关系
      • B b = new B();
      • 即我们创建A类时,其中的B类也会随之创建,它们的关系很紧密
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值