UML之类图

什么是类图

描述一个系统的静态结构,当系统分析师在对一个系统进行设计和建模的时候,通常都要从系统的构造词汇开始,考虑此词汇的基本属性和行为与及他们之间的关系。这样一来,系统分析师对所要设计的系统就有了一个更加清晰的认识,再把这些行为可视化为图,则称为类图。并且是用于描述系统的结构化设计和显示类,接口及他们的静态结构和他们之间的额关系。

类图的用途

支持系统的功能需求,当系统分析员以支持系统的功能需求为目的建立静态图时,通常以下列三种方式之一来使用类图:
1)对系统的词汇建模
2)对简单协作建模
3)对逻辑数据库模式建模
从某种意义上说UML中的类图是E-R图的超集,E-R图只针对存储的数据,而类图则在些基础上,增加了行为建模的能 力。在使用类图来表示E-R模型时,要注意遵循以下策略

•将表示E-R模型的类,用UML的标准构造型“{persistent}”来表示;

•展开类的结构性细节,并且加强关联和多重性分析;

•尽量消除循环关联、n-元关联

注:在它的用途这里,我仍只能知道它的定义,具体还是模糊,只理解为类图就是系统分析员可视化系统功能需求的图,包含他们间的属性、动作和他们间的关系。其他的三种方式,希望有知道的大佬能告知。

类图、包括的元素

在这里插入图片描述

类:类名称、属性、操作和职责

1,类名称又可分为简单名和路径名,其简单名就是单独的名称,不包含冒号。路径名是用类所在包的名称作为前缀的类名。
如果是抽象类,则类名称用斜体表示
示例如下:
路径名
在这里插入图片描述
简单名
在这里插入图片描述
2, 属性的语法:【可见性】属性名 【:类型】【=初始值】【{属性字符串}】
可见性:Public, private, protected 3种
属性:单字属性名小写,多个单词合并时,除了第一个单词,其余的首字母都要大写
类型:属性具有类型,用来说明该属性是什么数据类型。典型类型有:整型、布尔型、实型和枚举型,这些称为简单型。
初始值:设定此之有两个作用,如:1)保护系统的完整性,防止漏掉取值或被非法的值系统的完整性;2)为用户提供易用性
属性字符串:用来指定关于属性的其他信息
属性也可以作为一个类属属性来定义,此意味着此属性被该类的所有对象共享。在类图中,类属性带有一条下划线。
3,操作的语法:【可见性】操作名 【参数表】【:返回类型】【{属性字符串}】
可见性:公有(+),私有(-),受保护(#)和包内公有(~)
操作名:跟属性名一样
参数表:是一些按顺序排列的属性定义了操作的输入。参数的定义方式采用“名称:类型”的定义方式。如果存在多个参数就用逗号隔开。
返回类型:编程语言一般用“void表示无返回值
属性字符串:用此的情况是,在操作的定义中加入一些除了预定义元素外的信息
4,职责:类或其他元素的契约或义务。其是自由形式的文本

注:其实还不太清楚这个职责的画法和真正的用途与操作是否能代替职责,也非常希望能有大佬能在下方评论中告知我。

接口:只作为一些抽象操作来描述,有两种表达方式
1)接口是用一个带有名称的小圆圈表示的,并且通过一条实线与它的模型元素相连。
2)为了显示接口中的操作,接口被指定为一个使用普通类矩形符合的,带有构造型<>的类
关系:依赖,泛化,实现,关联
依赖四种类型:使用依赖,抽象依赖,授权依赖,绑定依赖
在这里插入图片描述
泛化:描述了·······一种的关系
在这里插入图片描述
实现:说明要具有接口一样的说明元素。用来表示类的一个优化形式和一个简单低效形式之间的关系。
在一下情况使用:1)在接口与实现该接口的类之间 2)在用例以及实现该用例的协作之间
在这里插入图片描述
关联:名称,角色,多重性,聚合,组合,导航性
名称,使用一个动词或动词短语来命名关联;角色,就是关联关系中一个类对另一个类所表现的职责。
示例如下:在这里插入图片描述
多重性:是指由多少对象可以参与该关联,多重性可用来表达一个取值范围、特定值、无限定的范围或一组离散值。约束是UML三大扩展机制之一,多重性是其中的一种约束。
在这里插入图片描述
聚合:整体与部分的关系,二者可独立存在
在这里插入图片描述
组合:整体和部分关系,但二者不可分别单独存在;如果成员被破坏则其中的对象不会继续存在。
在这里插入图片描述
导航性:描述一个对象通过链进行导航访问另一个对象。只在一个方向上,代表单向关联;两个方向上的导航的关联称为双向关联
示例如下
在这里插入图片描述

注:导航性我的理解是基本上每个有关联关联的应该就有导航关系,他们的表示方式一致。不知道我这个理解对不对,同样也想请求大佬们帮我指正指正。

如何画一个系统的类图

1,需求分析
2,发现类
3,筛选类
4,关联关系,多重性的分析
5,类的属性和所要进行的动作
6,有的职责,与及它的限制

以下是我画的类图,请多多指教,我也不知道对不对,哎

在这里插入图片描述

总结

对UML中的类图,还是有些吃不准的,只能说知道它的概念,就还是没有达到那种把它掌握的特别熟练;但相信还是会回来的,学习就是不断反复的过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值