第3章 统一建模语言UML(15)
时间:2025-03-10
时间:2025-03-10
3.7.2 类图模型的语法表示
1. 属性的语法表示
[访问控制属性] 名称 [重数] [:类型] [= 默认值] [{约束特征}] 这里至少必须指定属性的名称,其他的都是可选的。
访问控制属性分为Public、Private 和Protected三种,分别对应于UML中的“+”、“-”和“#”。
名称是标识属性的字符串。
重数可以在名称后面的方括号内添加属性的重数(在一些书籍中,也称为多重性)。 类型表示该属性的种类。它可以是基本数据类型,例如整数、实数、布尔型等,也可以是用户自定义的类型,还可以是某一个类。
默认值是赋予该属性的初始值。
约束特征是用户对该属性性质一个约束的说明。例如“{只读}”说明它具有只读属性。
图3.13(a)中Clock 类中,属性Hour描述为:
-Hour : int 访问控制属性“-”表示它是私有数据成员,其名称为“Hour”,类型为“int”,没有默认值和约束特性。
每个服务可以包括其访问控制属性、名称、参数表、返回类型和约束特性,最简单的情况是只表示出它的名称,其余部分都是可选的,根据图的详细程度选择使用。
2. 服务的语法表示
[访问控制属性] 名称 [(参数表)] [:返回类型] [{约束特性}] 访问控制属性分为Public、Private 和Protected三种,分别对应于UML中的“+”、“-”和“#”。
名称是标识服务的字符串。
参数表含有由逗号分隔的参数,其表示方法为按照“[方向] 名称 :类型 = 默认值”格式给出服务的形参列表,注意其格式和cpp文件中不同。方向指明参数是用于表示输入(in)输出(out)或是既用于输入又用于输出(inout)。
返回类型表示该服务返回值的类型,它可以是基本数据类型,可以是用户自定义的类型,也可以是某一个类,还可以是上述类型的指针。
约束特性是用户对该服务性质一个约束的说明。
图3.6(a)中Clock 类中,服务SetTime 描述为:
+ SetTime (NewH : int = 0, NewM : int = 0, NewS : int = 0) : void 访问控制属性“+”表示它是公有服务,其名称为“SetTime”,括号中是参数表,返回类型为void,没有约束特性。
在UML 中,用一个矩形来表示一个对象,对象的名字要加下划线。对象的全名写在图形的上部区域,由类名和对象名组成,其间用冒号隔开,表示方式为“对象名:类名”,在一些情况下,可以不出现对象名或类名。数据成员及其值在下面区域,数据成员是可选的。
仍以Clock类的对象为例。图3.14说明了在UML中表示对象的不同方法。左图给
下一篇:四年级课外阅读知识竞赛试卷