文档章节

UML之类图(Class Diagram)

YuanyuanL
 YuanyuanL
发布于 2017/09/07 21:28
字数 640
阅读 20
收藏 0

其他参考:http://www.uml.org.cn/oobject/201211231.asp

1、概念

类图(Class diagram)主要用于描述系统的结构化设计。类图也是最常用的UML图,用类图可以显示出类、接口以及它们之间的静态结构和关系。

2、元素

  在类图中一共包含了以下几种模型元素,分别是:类(Class)、接口(Interface)、依赖(Dependency)关系、泛化(Generalization)关系、关联(Association)关系、聚合关系(Aggregation)、组合关系(Composition)和实现(Realization)关系。

2.1 类(Class)

  在面向对象(OO) 编程中,类是对现实世界中一组具有相同特征的物体的抽象。

2.2 接口(Interface)

  接口是一种特殊的类,具有类的结构但不可被实例化,只可以被实现(继承)。在UML中,接口使用一个带有名称的小圆圈来进行表示。

2.3 依赖(Dependency)关系

  依赖关系是指两个或多个类之间的依存关系,如植物类依赖于土壤类。 依赖关系还可以再细分为5种类型,分别是绑定(Binding)依赖、实现(Realization)依赖、使用(Usage)依赖、抽象(Abstraction)依赖和授权(Permission)依赖。

  依赖关系用虚线箭头来表示,箭头指向为依赖的方向。

2.4 泛化(Generalization)关系

  简单的讲就是类之间的继承关系。在UML中,泛化关系用空心三角形+实线来表示,箭头指向为父类。

2.5 聚合(Association)关系

  聚合关系是类之间的一种较弱的耦合关系,如一个字符串数组和一个字符串就是一种聚合关系。在UML中类图中,聚合关系用空心的菱形+实线箭头来表示,箭头指向为被聚合的类。

  

2.6 组合(Aggregation)关系

  组合关系是类之间一种整体与部分之间的关系,如一只青蛙有四条腿,青蛙类与青蛙腿类之间的关系就是组合关系。在UML类图中,组合关系用实心的菱形+实线箭头来表示,箭头指向为被组合的类。

2.7 关联(Composition)关系

  关联关系是类之间一种相互影响的关系,影响的方向就是关联的方向。在UML类图中,组合关系用实线箭头来表示。

2.8 实现(Realization)关系

  一般来讲实现关系是针对类与接口之间的关系而言的。在UML类图中,实现关系用空心三角形+虚线来表示。

3、简单的类图示例

 

本文转载自:http://www.cnblogs.com/silent2012/archive/2011/09/07/2169946.html

共有 人打赏支持
YuanyuanL

YuanyuanL

粉丝 152
博文 322
码字总数 188376
作品 0
济南
部门经理
私信 提问
UML Designer 1.2 发布,Eclipse 的 UML 插件

UML Designer 1.2 发布了,该版本要求 Eclipse 3.7 的支持。 安装地址:http://marketplace.obeonetwork.com/updates/od6/ UML Designer 是 Eclipse 的 UML 插件,支持 UML 2.1,可将 UML 转......

oschina
2012/06/13
6.4K
0
MyEclipse教程:使用UML创建模块库——第一部分(二)

MyEclipse 在线购买低至75折!火爆开抢>> 【MyEclipse最新版下载】 UML1建模文件存储在建模库中,建模可用于生成Java代码,或者可以从代码中生成模型。本教程将向您展示如何执行与建模资源库...

Miss_Hello_World
05/23
0
0
UML建模工具--UMLGraph

UMLGraph是一个开源的,支持说明性规范(Declarative Specification)、类图(Class Diagram) 、顺序图(Sequence Diagrams)的UML建模工具。目前,该项目正努力支持所有类型的UML图,并已实现了...

匿名
2010/09/03
3K
0
UML Designer

UML Designer 是 Eclipse 的 UML 插件,支持 UML 2.1,可将 UML 转成特定的领域模型。 提供以下 UML 类型支持: Package Hierarchy Class Diagam Component Diagram Object Diagram Composit......

匿名
2012/06/13
32.3K
0
UMLGraph 5.5 发布,UML建模工具

UMLGraph 5.5 发布了,该版本允许对关系进行聚合,同时生成的 UMLGraphDoc 文档兼容 JDK 7,另外从 5.5 版本开始,UMLGraph 的源码移到 Github 上。 UMLGraph是一个开源的,支持说明性规范 ...

oschina
2012/05/14
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

MariaDB 服务器在 MySQL Workbench 备份数据的时候出错如何解决

服务器是运行在 MariaDB 10.2 上面的,在使用 MySQL Workbench 出现错误: mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"'......

honeymose
今天
3
0
apache顶级项目(二) - B~C

apache顶级项目(二) - B~C https://www.apache.org/ Bahir Apache Bahir provides extensions to multiple distributed analytic platforms, extending their reach with a diversity of s......

晨猫
今天
6
0
day152-2018-11-19-英语流利阅读

“超级食物”竟然是营销噱头? Daniel 2018-11-19 1.今日导读 近几年来,超级食物 superfoods 开始逐渐走红。不难发现,越来越多的轻食餐厅也在不断推出以超级食物为主打食材的健康料理,像是...

飞鱼说编程
今天
13
0
SpringBoot源码:启动过程分析(二)

接着上篇继续分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 一样的,我们先把时序图贴上来,方便理解: 二.源码分析 回顾一下,前面我们分析到了下...

Jacktanger
昨天
4
0
Apache防盗链配置,Directory访问控制,FilesMatch进行访问控制

防盗链配置 通过限制referer来实现防盗链的功能 配置前,使用curl -e 指定referer [root@test-a test-webroot]# curl -e "http://www.test.com/1.html" -x127.0.0.1:80 "www.test.com/1.jpg......

野雪球
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部