编辑: ddzhikoi 2019-07-03
类图用来描述系统内各种实体的类型以及不同的实体之间是如何彼此关联的, 显示了 系统的内部静态结构, 因此类图的描述对于系统的整个生命周期都是有效的.

如果说用例 图是系统的 面子 , 那么类图就是系统的 里子 .类图不仅包含了系统定义的各种类, 还包 含了各种关系, 如关联、 泛化和依赖等.类图大部分涉及对系统的词汇建模、 对协作建模或 对模式建模.作为面向对象系统的建模中最常见的图, 类图是组件图与部署图的基础, 它不 仅对结构模型的可视化、 详述和文档化很重要, 而且对通过正向与逆向工程构造可执行的系 统也很重要. 5.

1 什么是类图 类图( c l a s sd i a g r a m) 是显示一组类、 接口、 协作以及它们之间关系的图.一个类图主要 通过系统中的类以及各个类之间的关系来描述系统的静态结构. 类图与数据模型有许多相似之处, 区别就在于类不仅描述了系统内部信息的结构, 也包 含了系统的内部行为, 系统通过自身行为与外部事物进行交互. 类图主要包含七种元素:类、 接口、 协作、 依赖关系、 泛化关系、 实现关系和关联关系. 类图中还可以含有包或子系统, 用来把模型元素聚集成更大的组块.与其他 UML 图类似, 类图同样可以创建约束和注释等.图5 1显示了一个类图, 读者可以在学习完本章全部内 容之后再来尝试阅读这个类图所描述的情境.

5 5 图5

1 类图 5.

2 类图的组成元素 本节将重点介绍类图的组成元素:类、 接口以及类图中的四种关系. 5. 2.

1 类类( c l a s s ) 是一组拥有相同的属性、 操作、 方法、 关系和行为的对象描述符.一个类代表 了被建模系统中的一个概念.根据模型种类的不同, 此概念可能是现实世界中的( 对于分析 模型) , 也可能是包括算法和计算机实现的概念( 对于设计模型) .类是面向对象系统组织结 构的核心. 类定义了一组有着状态与行为的对象.类的状态由属性和关联来描述, 个体行为由操 作来描述, 对象的生命周期则由附加给类的状态机来描述. 在UML中, 类表达成一个有三个分隔区的矩形.其中顶端显示类名( n a m e ) , 中间显 示类的属性( a t t r i b u t e ) , 尾端显示类的操作( o p e r a t i o n ) , 如图5 2所示.其中, 可选择显示属 性和操作的可见性、 属性类型、 属性初始值、 操作的参数列表和操作的返回值等信息.此外, 也可以选择隐藏类的属性或操作部分, 隐藏了这两部分的类简化为一个只显示类名的矩形, 如图5 3所示.

5 6 图5

2 类图5

3 隐藏属性和操作的类 1.类名 每个类都必须有一个区别于其他类的名称.类名是一个文本串, 在实际应用中, 类名应 该来自系统的问题域, 选择从系统的词汇表中提取出来的名词或名词短语, 明确而无歧义, 便于理解交流. 类名有两种 表示方法:使用单独的名称叫作简单名(simplen a m e) , 如图52中的Person;

在类名前边加上包的名称, 如j a v a : : a w t : : R e c t a n g l e , 叫作路径名( p a t hn a m e ) , 表示Rectangle类属于a w t包, 而a w t包又属于j a v a包. 按照一般约定, 类名一般采用 U p p e r C a m e l C a s e格式, 即以大写字母开头, 大小写混合, 每个单词首字母大写, 避免使用特殊符号. 注意:关于类的路径名, 请参考第7章有关包的内容. 2.属性 属性是已被命名的类的特性, 它描述了该特性的实例可以取值的范围.类可以有任意数 量的属性, 也可以没有任何属性.属性描述了类的所有对象所共有的一些特性.例如, 每一面 墙都有高度、 宽度和厚度三个属性.因此, 一个属性是对类的一个对象可能包含的一种数据或 状态的抽象.在一个给定的时刻, 类的一个对象将对该类属性的每一个属性具有特定值. 在UML中, 描述一个属性的语法格式为: 可见性o p t属性名:类型 o p t多重性o p t=初始值 o p t{ 特性} o p t 注意:下标o p t在这里表示 可选 , 即可以省略下标前的项.括号 表示括号内部 的短语是一个整体.本书在下文中说明语法格式时同样会用到这些符号, 请读者注意. 属性名是属性的标识符.在描述属性时, 属性名是必需的, 其他部分可选.按照一般约 定, 属性名采用l o w e r C a m e l C a s e格式, 即以小写字母开头, 非首单词的首字母大写.用下画 线标识的属性名, 说明该属性是静态( s t a t i c ) 属性, 即该类的所有对象之间共享该属性. 可见性描述了该属性在哪些范围内可以被使用.属性的可见性有公有、 私有和保护三 种, 如表5 1所示.例如, a t t r就表示一个私有属性a t t r . 表5

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题