文档章节

UML类图(1)

hell03W
 hell03W
发布于 2016/11/24 21:19
字数 830
阅读 19
收藏 0

1. 类的UML图示

类封装了数据和行为, 是面向对象的重要组成部分, 它是具有相同属性,操作,关系的对象集合的总称.

类图: 用来描述不同的类和他们之间的关系.

UML中, 类使用包含类名, 属性, 操作且带有分割线的长方形表示, 如下:

类一般由三部分构成:

**类名:**就是类的名称, 类名是一个字符串.

**类的属性: **指类的性质, 即类的成员变量. 一个类可以有任意多个属性, 也可以没有属性.

可见性  名称:类型 [ = 缺省值 ]

+, -, # 分别表示: 公有(public)、私有(private)和受保护(protected)
类型表示属性的类型.

**类的操作: **操作是类的任意一个实例对象都可以使用的行为, 是类的成员方法.

可见性  名称(参数列表) [ : 返回类型]

可见性, 名称 同`类的操作`; 参数列表表示方法的参数; 返回值类型表示, 方法的返回值

2. 类与类之间的关系: 关联关系

在软件系统中, 类并不是孤立存在的, 类与类之间的各种关系, 对于不同类型的关系, UML提供了不同的表达方式.

2.1 双向关联

如下图所示, 是双向关联. 用不带箭头的实线表示.

2.2 单向关联(Association)

类的关联关系也可以是单向的, 用一个带箭头的实线表示, 如下图所示.

2.3 自关联

在系统中, 可能存在某一些类属性对象类型为该类自身, 这种特殊关联成为自关联. 例如在组合模式, 单例模式中就有自关联的类. 类图如下所示:

2.4 多重关联

多重关联关系表示两个关联对象在数量上的对应关系

2.5 聚合关系(Aggregation)

聚合(Aggregation)关系表示整体和部分的关系. **在聚合关系中, 成员对象是整体对象的一部分, 但是成员对象可以脱离整体对象而独立存在.**在UML中,聚合关系用带空心菱形的直线表示。

在代码实现聚合关系时候, 成员对象通常作为构造方法, setter方法或者业务方法的参数注入到整体对象中.

2.6 组合关系(Composition)

组合关系也表示类之间的整体与部分的关系. 组合关系中, 整体对象可以控制成员对象的声明周期, 一旦整体对象不存在, 成员对象也将不存在, 成员对象和整体对象之间具有同生共死的关系. 在UML中, 用实心菱形的直线表示.

3. 类与类之间的关系: 依赖关系

4. 类与类之间的关系: 泛化关系(继承关系)

泛化关系就是继承关系, 用于描述父类和子类之间的关系, 父类称为基类或者超类, 子类又称为派生类.在UML中, 泛化关系用带空心三角形的直线表示.

5. 类与类之间的关系: 接口与实现关系

在UML中,类与接口之间的实现关系用带空心三角形的虚线来表示。

© 著作权归作者所有

共有 人打赏支持
hell03W
粉丝 9
博文 145
码字总数 109892
作品 0
朝阳
程序员
私信 提问
使用UML创建模块库——第一部分(三)

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

Miss_Hello_World
2018/08/02
0
0
软考之UML图深入学习(2)

前言 经历过软考之后的UML图学习,对于九种图有了更加深入的认识,上一篇文章《软考之UML图深入学习(1)》中,介绍了UML建模工具是什么? 这篇文章继前文,进一步深入,从小编思考的UML图进...

m18633778874
2017/11/12
0
0
UML类图符号理论

前言 相信大家在学习UML类图的时候,最大的困难可能来自两个方面: 类图中各种关系的区别; 多种关系的符号记忆容易混淆; 本着"Do one thing and do it well."的原则,本文不介绍UML类图中各...

算法与编程之美
2016/02/18
276
3
实用UML知识——如何看懂UML传递的软件架构信息

前公司的技术交流大体是靠口授, 个人会采用一些简单的架构文档+ 口述的方式, 描述一个软件产品的整体架构. 并且, 大多数情况是, 先有代码, 后有文档的方式, 这样做有以下优点: 1. 关注软件结...

晨曦之光
2012/03/09
730
0
DDD理论学习系列(5)-- 统一建模语言

DDD理论学习系列——案例及目录 1.引言 上一节讲解了领域模型,领域模型主要是将业务中涉及到的概念以面向对象的思想进行抽象,抽象出实体对象,确定实体所对应的方法和属性,以及实体之间的...

圣杰
2017/06/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

mysql grant 用户权限总结

用户权限管理主要有以下作用: 1. 可以限制用户访问哪些库、哪些表 2. 可以限制用户对哪些表执行SELECT、CREATE、DELETE、DELETE、ALTER等操作 3. 可以限制用户登录的IP或域名 4. 可以限制用...

Airship
17分钟前
1
0
RabbitMQ学习(3)

1. 消费端 1. 消费端通过推模式或者拉模式从RabbitMQ中获取并消费消息,当消费者确认处理消息后,可以手动确认消息已被接收,然后就会将该消息从RabbitMQ的队列中标记再清除,消费者端还可以...

江左煤郎
27分钟前
1
0
linux mysql(5.7)开启慢查询

一、有3个配置需要设置, 1:相关开关 2:日志目录文件 3:慢查询的时间限制 二、设置完之后重启mysql service mariadb restart 三、重启后做个测试 连接mysql 并查询: select sleep(6); 四...

chro008
35分钟前
1
0
选择IDC机房、选择硬件、上架服务器、装系统

选择IDC机房 当业务量比较大的时候,往往选用IDC而不是公有云来跑业务。 IDC机房的服务一般分为两种 需要我们自己购买服务器和网络设备,托管到IDC机房。IDC机房会提供布线、巡检、硬件操作等...

李超小牛子
37分钟前
2
0
《傲慢与偏见》的读书笔记与读后感作文2400字

《傲慢与偏见》的读书笔记与读后感作文2400字: 作者:孙苑馨;笔者按:读书这个习惯是我爸妈养出来的。小时候父母赚的钱除了吃饭穿衣剩下的就是买书了,他们除了买各种新鲜出版的文艺派图书...

原创小博客
45分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部