前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UML图例之类图

UML图例之类图

作者头像
用户7353950
发布2022-06-23 16:16:53
1.1K0
发布2022-06-23 16:16:53
举报
文章被收录于专栏:IT技术订阅IT技术订阅

UML图例之类图

作为UML图例中的重要角色,通过许多(静态)说明性的模型元素(例如类、包和它们之间的关系,这些元素和它们的内容互相连接)描述系统静态结构,帮助我们快速了解、理清系统中对象之间的关系。

一、类图中的几种关系

  • 泛化关系:在代码中体现为继承关系,设计上用空心箭头实线表示。
  • 实现关系:在代码中体现在接口和实现关系,设计上用实心箭头虚线表示。
  • 关联关系:在代码中体现为两个类之间存在语义上的关系,体现在类之间存在的隐约关系。

  1、单向关联:学生可以拥有书籍,学生知道书籍的存在,但是书籍无需知道学生的存在,学生可以拥有多本书籍,因此从学生指向书籍关联。设计上用箭头实线表示。

  2、双向关联:学生知道老师的存在,老师知道学生的存在。设计上用实线表示。

  关联关系常用于数据库表的设计,与数据库范式相对应。

  • 聚合关系:特殊的关联关系,体现整体和部分的关系,设计上用空心菱形实线箭头表示。

  部门不存在,员工仍然可以存在,员工离职,部门仍然存在。体现的是0和n,整体和部分,整体不存在,部分仍然可以存在。

  • 组合关系:特殊的关联关系,和聚合关系类似,体现整体与部分关系,设计上用实心菱形实现箭头表示。

  公司和部门关系体现在公司不存在,则部门也不存在了,前者掌握整体的生命周期。体现在0和0、1和n,整体不存在,则部分不存在,整体存在,则部分存在。

  • 依赖关系:没有直接的关系,仅仅在代码运行期间,产生的依赖,如将A类中间的时间属性赋值到B类中的时间属性。A类中调用类中类型为B类的属性,A类中调用的方法,需要用到B类的信息等。设计上用箭头虚线表示。箭头指向方为被调用方。

二、UML类图与数据表

类图到表结构的映射中只需考虑泛化、关联关系。

 1、泛化关系

  • 父类和子类映射为表,结构简单,更改方便,但数据分散,子类众多情况下,表数量也众多。
  • 只将子类映射为表,数据集中,方便查询,但如果父类字段扩充,需要修改子类下所有的表。
  • 只将父类映射为表,表的数量少,读写方便,但列数量增多,所有子类的列都在父类表中存在,一行数据中,关注的信息量变少,空闲列增加。

 2、关联关系

  • 一对一关联关系,相关两个类分别映射成两张表,尽管两张表权重一样,但是实际上还是会区分成主从表形式,从表保存主表主键,需查询从表数据时,以主表id为参数,用的较少,除非从表是使用率较低的信息存储,否则会合并成一张表。
  • 一对多关联关系,与一对一关联关系设计方式一样,设计主从表,从表保存主表主键,连表查询时,采用主键Id连从表外键查询。
  • 多对多关联关系,设计时,采用中间表形式,多对多拆分成两个一对多,中间表负责存储两个主表主键及中间表可能拥有的自身属性。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT技术订阅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • UML图例之类图
    • 一、类图中的几种关系
      • 二、UML类图与数据表
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档