参数指定自变量的类型以及在调用操作时它所采用的值。可以对模型中的操作添加参数,以定义在调用操作时传入和传出该操作的信息。一项操作可以具有任意数目的参数,也可以不具有任何参数。
每个参数都有一个名称、一个类型表达式和一种参数方向类型。参数的名称在操作的参数列表中必须是唯一的。类型表达式是对数据类型的引用,数据类型可以是类、基本数据类型、用户定义的数据类型或者接口。还可以为参数指定方向类型和缺省值。方向类型(in、out、inout 或 return)表示参数传入或传出操作时的方向。参数的缺省值就是在您调用操作时未显式定义值的情况下该参数将采用的值。参数的语法为如下所示:
[direction] name : type-expression = default-value
例如,在一个电子商务应用程序中,Customer 类具有一项 getBalance 操作,而该操作带有 [in] day : Date = 01/01/2005 参数。参数语法描述了以下信息:
| 组成语法的各个部分 | 示例 | 描述 |
|---|---|---|
| [direction] | [in] | 日期传入操作中,它既不会被更改也不会传出。 |
| name | day | 参数的名称(day)描述传入操作的数据的特性。 |
| type-expression | Date | 值的类型是 Date 类的一个实例。 |
| default-value | 01/01/2005 | 缺省值为 2005 年 1 月 1 日。 |
在操作中可以显示或隐藏参数。图编辑器在多种图类型(包括类图、组件图和用例图)中的类元形状中显示参数。在操作中,使用圆括号将用逗号分隔的输入和输出参数列表括起来。图编辑器在圆括号后面显示返回和抛出参数,并且只显示它们的类型。在项目资源管理器视图中,参数名称显示在它的相关操作下。
下表说明了操作中的参数在项目资源管理器视图和图编辑器中分别采用的表示法。
| “项目资源管理器”视图中的参数 | 图编辑器中的参数 |
|---|---|
![]() |
![]() |
Customer 类有一项 getBalance 操作,执行该操作将返回客户的帐户在特定某天所具有的余额。可以对该操作添加 day 参数,以指示该功能的调用者必须提供一个日期。可以添加一个 money 参数,以指示该操作应返回用于指定帐户中资金量的 MoneyType 类的一个实例。要指示 money 参数是一种返回类型,将它的 direction 属性设置为 return 即可。