欢迎来到天天文库
浏览记录
ID:45586408
大小:2.77 MB
页数:130页
时间:2019-11-15
《《类图和对象图郭》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章类图和对象图6.1类图的概念6.2类图建模技术6.3对象图6.4补充:分析类类图类图描述系统中类的静态结构,描述系统中的类及类之间的关系,还描述类的内部结构(类的属性和操作)。类图描述的是一种静态关系,在系统的整个生命期中都是有效的。对象图是类图的实例,由于对象存在生命周期,所以对象图只能在系统的某一时间存在。类图的地位类图是面象对象系统建模中最常用的图。类图是定义其它图的基础,在类图的基础上,可以使用状态图、协作图、组件图和配置图等进一步描述系统其它方面的特征。类图中的类可以直接用某种面向对象编程
2、语言实现。6.1类图的概念描述类、接口及它们之间关系的图。显示系统中各个类的静态结构。6.1.1概述类图的元素:类(Class)接口(Interface)依赖关系(Dependency)泛化关系(Generalization)关联关系(Association)实现关系(Realization)6.1.2类类是构成类图的基础,也是面向对象系统组织结构的核心。类是对一组具有相同属性、操作、关系和语义的对象的抽象。类包括名称部分(Name)、属性部分(Attribute)和操作部分(Operation)。UML
3、规范采用一个具有3个分栏的图标表示一个类。名称分栏必须出现,而属性分栏和操作分栏可以出现或不出现。当隐藏某个分栏时,并非表明某个分栏不存在。隐藏操作参数隐藏可见性6.1.2类1名称2属性3操作4职责5约束6注释(1)名称应该来自系统的问题域。应该是一个名词。分为简单名称和路径名称。(2)属性描述了类在软件系统中代表的事物(即对象)所具备的特性。类可以有任意数目的属性,也可以没有属性。在UML中,类属性的语法为:1.可见性可见性描述了该属性对其它类是否可见,以及是否可以被其它类引用。类型:公有(Public
4、)“+”私有(Private)“-”受保护(Protected)“#”注意:UML未规定默认的可见性,如果没有给出,表明该属性的可见性尚未定义。2.属性名每个属性都必须有一个名字以区别于类中的其他属性。属性名由描述所属类的特性的名词或名词短语组成。单字属性名小写,如果属性名包含了多个单词,这些单词要合并,且除了第一个单词外其余单词的首字母要大写。----建议3.类型简单类型:整型布尔型实型枚举类型系统中的其他类4.初始值目的:保护系统的完整性,防止漏掉取值或被非法的值破坏系统的完整性。为用户提供易用性。5
5、.属性字符串属性字符串是用户对该属性性质的一个约束说明。例如{只读}这样的特性说明该属性的值不能被修改。任何希望添加在属性定义字符串值但又没有合适地方可以加入的规则,都可以放在属性字符串里。+status:Status=unpaid{unpaid,paid}+color:Color=red{red,green,yellow}确定取值范围补充:作用域作用域(scope)是与属性和操作相关的一个重要概念。存在两种作用域:实例(instance)作用域下,类的每个实例对象都有自己的属性值和操作。分类符(clas
6、sifier)作用域下,一个类的所有实例只存在一个属性值和操作。分类作用域的属性和操作名字要带下划线。类的作用域属性:分类作用域的属性,它能被所属类的所有对象共享。例如:C++中的静态成员静态属性属性声明的例子Points属性的多重性为2..*,表示该属性值有2个或者多个,同时这些值之间是有序的。Name属性的多重性为0..2,表示该属性值有可能是1个或者2个,也可能值为null。(3)操作对类的对象所能做的事务的抽象。一个类可以有任意数量的操作或者根本没有操作。返回类型、名称和参数一起被称为操作签名。在
7、UML中,类操作的语法为:操作1.可见性2.操作名3.参数表4.返回类型5.特性字符串1.可见性类型:公有(Public)“+”私有(Private)“-”受保护(Protected)“#”包内公有(Package)“~”包内公有(Package)“~”包内公有用来描述操作的可访问性的可见性为包内公有的操作可以被其所在包的对象访问。2.操作名用来描述所属类的行为的动词或动词短语。单字操作名小写,如果操作名包含了多个单词,这些单词要合并,并且除了第一个单词外其余单词的首字母要大写。3.参数表一些按顺序排列的
8、属性定义了操作的输入。是可选的,即操作不一定必须有参数才行。定义方式:“名称:类型”。若存在多个参数,将各个参数用逗号隔开。参数可以具有默认值。4.返回类型是可选的,即操作不一定必须有返回类型。绝大部分编程语言只支持一个返回值。具体的编程语言一般要加一个关键字void来表示无返回值。5.特性字符串在操作的定义中加入一些除了预定义元素之外的信息。例如:{query}这样的特性说明该操作不会修改系统的状态。{update}这样的特
此文档下载收益归作者所有