文档章节

UML之类图(Class Diagram)

YuanyuanL
 YuanyuanL
发布于 2017/09/07 21:28
字数 640
阅读 19
收藏 0
点赞 0
评论 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
博文 318
码字总数 187226
作品 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
UML建模工具--StarUML

StarUML是一个开源的UML工具列表软件,它遵守GNU GPL的一个修订版。 StarUML项目宣称的目标是代替大型的商业UML工具软件,如IBM的Rational Rose,Borland公司的Together。 StarUML支持UML2....

匿名
2008/12/16
89.8K
6
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
UMLGraph 5.5 发布,UML建模工具

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

oschina
2012/05/14
1K
0
Visual Studio 2010 Ultimate敏捷功能特性(上)

随着软件开发日趋国际化,对软件的质量要求和管理也随之增高。微软看到了应用程序生命周期管理在业界逐渐被接受认可的趋势,并宣称VSTS2010将会是一个革命性的.Net软件开发以及管理工具的产品...

高阳
2009/11/19
0
0
MyUML Designer

MyUML Designer 是一个基于 Eclipse 开发的功能强大的 UML 建模插件,实现了 UML 2.2 标准。 可绘制的图形种类包括: • Class Diagram • Object Diagram • Package Diagram • Component ...

匿名
2010/03/10
623
0
UMLGraph 5.4 发布

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

红薯
2011/01/09
655
0
使用StarUML建模(转载)

使用StarUML建模(转载) 导读:   StarUML是专业的UML建模工具,又因为它是免费开源的,因此是初学者的首选软件。废话少说,开始:   1、界面介绍:   主要是四个方面:工具栏、工作区、...

无与伦比的卒子
2012/11/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

shell中的函数、shell中的数组、告警系统需求分析

shell中的函数 格式: 格式: function f_name() { command } 函数必须要放在最前面 示例1(用来打印参数) 示例2(用于定义加法) 示例3(用于显示IP) shell中的数组 shell中的数组1 定义数...

Zhouliang6
40分钟前
1
0
用 Scikit-Learn 和 Pandas 学习线性回归

      对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了。 1. 获取数据,定义问题     没有...

wangxuwei
今天
0
0
MAC安装MAVEN

一:下载maven压缩包(Zip或tar可选),解压压缩包 二:打开终端输入:vim ~/.bash_profile(如果找不到该文件新建一个:touch ./bash_profile) 三:输入i 四:输入maven环境变量配置 MAVEN_HO...

WALK_MAN
今天
0
0
33.iptables备份与恢复 firewalld的9个zone以及操作 service的操作

10.19 iptables规则备份和恢复 10.20 firewalld的9个zone 10.21 firewalld关于zone的操作 10.22 firewalld关于service的操作 10.19 iptables规则备份和恢复: ~1. 保存和备份iptables规则 ~2...

王鑫linux
今天
1
0
大数据教程(2.11):keeperalived+nginx高可用集群搭建教程

上一章节博主为大家介绍了目前大型互联网项目的系统架构体系,相信大家应该注意到其中很重要的一块知识nginx技术,在本节博主将为大家分享nginx的相关技术以及配置过程。 一、nginx相关概念 ...

em_aaron
今天
0
0
Apache Directory Studio连接Weblogic内置LDAP

OBIEE默认使用Weblogic内置LDAP管理用户及组。 要整理已存在的用户及组,此前办法是导出安全数据,文本编辑器打开认证文件,使用正则表达式获取用户及组的信息。 后来想到直接用Apache Dire...

wffger
今天
2
0
HFS

FS,它是一种上传文件的软件。 专为个人用户所设计的 HTTP 档案系统 - Http File Server,如果您觉得架设 FTP Server 太麻烦,那么这个软件可以提供您更方便的档案传输系统,下载后无须安装,...

garkey
今天
1
0
Java IO类库之BufferedInputStream

一、BufferedInputStream介绍 /** * A <code>BufferedInputStream</code> adds * functionality to another input stream-namely, * the ability to buffer the input and to * sup......

老韭菜
今天
0
0
STM 32 窗口看门狗

http://bbs.elecfans.com/jishu_805708_1_1.html https://blog.csdn.net/a1985831055/article/details/77404131...

whoisliang
昨天
0
0
Dubbo解析(六)-服务调用

当dubbo消费方和提供方都发布和引用完成后,第四步就是消费方调用提供方。 还是以dubbo的DemoService举例 -- 提供方<dubbo:application name="demo-provider"/><dubbo:registry address="z...

青离
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部