UML静态类图
0,
主要分为类、接口、协作、关系,这四种元素。
作用:a,显示类、接口以及他们之间的静态结构和关系;b,用于描述系统的结构化设计。
1,类
|
CStudent |
|
+m_strName : string |
|
+Study() : void |
类名:
属性:[可见性]属性名 [:类型] [=初试值] [{属性字符串}]
操作:[可见性]操作名[(参数表)] [:返回类型] [{属性字符串}]
+(public), -(private), #(protected), ~(package)
2,接口
|
<<interface>> |
|
+Eat() : void |
接口是对对象行为的描述,一个类可有一个或多个接口。
3,协作
在一定的语境中一组对象以及实现某些行为的对象间的相互作用。
4,关系
1),泛化Generalization
a,是一种继承关系,它指定子类如何特例化父类的所有特征和行为。
b,用带空心箭头的实线表示,箭头指向父类。
个实例.
0..*: 对实例的数目没有限制.
1: 只能有一个实例.
1..*: 至少有一个实例.
d,表现在代码层面,为被关联类B以类属性的形式出现在关联类A中,也可能是关联类A引用了一个类型为被关联类B的全局变量。

3.2)、聚合Aggregation
a,整体与部分的关系,且部分可以离开整体单独存在。聚合属于关联中的一中,是强关联关系。
b,用带空心菱行实线表示,菱形指向整体。

3.3)、组合Composition
a, 整体与部分的关系,且部分不能离开整体单独存在。是比聚合还强的关系。它要求整体对象负责其中部分对象的生命周期。
b, 用带实心菱行实线表示,菱形指向整体。

5,依赖Dependency
a, 元素A的变化会影响元素B,那么B是A的依赖关系。避免双向依赖,关联、实现、泛化都是依赖关系。
b, 带虚线的箭头表示,箭头指向被依赖元素。

6,
UML静态类图的更多相关文章
- UML类图与时序图
UML统一建模语言 结构式图形: 静态图(类图,对象图,包图) 实现图(组件图,部署图) 剖面图 复合结构图 行为式图形: 活动图 状态图 用例图 交互式图形: 通信图 交互概念图(2.0) 时序图( ...
- UML类图(下):关联、聚合、组合、依赖
前言 上一篇文章UML类图(上):类.继承.实现,讲了UML类图中类.继承.实现三种关系及其在UML类图中的画法,本文将接着上文的内容,继续讲讲对象之间的其他几种关系,主要就是关联.聚合.组合.依赖, ...
- UML类图(上):类、继承和实现
面向对象设计 对于一个程序员来说,在工作的开始阶段通常都是别人把东西设计好,你来做.伴随着个人的成长,这个过程将慢慢变成自己设计一部分功能来实现,自己实现.如果要自己设计,无论是给自己看,还是给别人看 ...
- UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...
- UML类图关系全面剖析
UML的类图关系分为: 关联.聚合/组合.依赖.泛化(继承).而其中关联又分为双向关联.单向关联.自身关联:下面就让我们一起来看看这些关系究竟是什么,以及它们的区别在哪里. 1.关联 双向关联:C1- ...
- UML类图关系--继承(泛化)、实现、关联、聚合、组合、依赖
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composi ...
- UML类图的6大关系
<小酌重构系列>已经完成了大约1/3了,在这些文章中,我使用了一些简单的类图来描述重构策略.在之后的文章中,我可能会借助稍微复杂一些的UML类图来介绍.但是在此之前,我觉得有必要先介绍一下 ...
- [.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图
[.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图 1.活动图简介 定义:是阐明了业务用例实现的工作流程. 业务工作流程说明了业务为向 ...
- [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图
[.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图 1.UML简介 Unified Modeling Language (UML)又称统 ...
随机推荐
- Delphi 多文件拖放获取路径示例
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...
- JAVA static 作用
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何 ...
- PHP获取解析URL方法
们要经常对url里面所带的参数进行解析,如果我们知道了url传递参数名称,例如: /index.php?name=tank&sex=1#top 我们就可以通过$_GET['name'],$_G ...
- 终于找到了无毒版的fences1.0(2.0版本要收费的)
今天终于安装了fences1.0,桌面不用那么乱哄哄的啦 我在博客里上传了安装文件,方便大家下载安装,这是无毒的哦,网上有很多都是不能通过病毒检测的. 地址如下:点击这里下载 使用方法: 创建块:安装 ...
- 【双十一到了,准备买书了么?】推荐几本c/c++入手的书籍
<C和指针>c语言的经典之作,全书共18章,覆盖了数据.语句.操作符和表达式.指针.函数.数组.字符串.结构和联合等几乎所有重要的C编程话题.而且每章后面都有基础回顾已经较多例程,很适合入 ...
- C#项目代码规范
C#项目代码规范 前言 小菜就是小菜,几个人搞出来的项目,让公司大牛稍微看了下,最后送出了惨不忍睹四个字.命名各种各样,五花八门,大写英文.小写英文.大写拼音.小写拼音.英文和拼音组合.字母和特殊 ...
- Android(java)学习笔记107-0:通过反射获得构造方法并且使用
1.获取字节码文件对象: Class c = Class.forName("cn.itcast_01.Person"); 2.获取构造方法 ...
- Linux 下安装配置nginx及常见问题解答
其实也不能完全算是原创吧!都是我配置nginx时所遇到的问题,查阅资料后总结起来.即是巩固一下nginx的配置,也是分享给新入Linux的童鞋们一些知识 好了,不多废话,进入主题吧! 为nginx添加 ...
- 有关ftp4j的FTPListParseException异常
昨天换了个ftp服务器,发现程序出现了异常it.sauronsoftware.ftp4j.FTPListParseException,网上搜了下,说是FTPClient.list()时it.sauro ...
- CF Fox And Two Dots (DFS)
Fox And Two Dots time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...