Opaque and Function Behaviors

OpaqueBehavior是一种行为,它的规约以文本语言而非UML来给定。

OpaqueBehavior有一个body,它包含了代表所需行为的文本字符串序列。相应的language字符串序列可以被用来规定每一个body字符串用哪门语言来解释。语言按序与body字符串匹配。UML规范没有规定body字符串如何被语言所解释,尽管其它的规范可能特定了特定的language字符串可以用于解释(例如,“OCL”可以用于按照OCL规范定义的表达式)。

注意. 语言不是必需要指定的。如果没有指定它们,那么对于body字符串的解释应该可以从它的格式或该OpaqueBehavior的使用上下文中隐含推断出来。

如果一个OpaqueBehavior有多个body字符串,那么任何一个都可以用作该OpaqueBehavior的行为。UML规范没有定义如何对此作出选择。

FunctionBehavior是一个OpaqueBehavior,它不访问或修改任意对象或其它外部数据。在一个FunctionBehavior的执行过程中,不允许与该FunctionBehavior的外界进行通信或交互。计算它的结果所需的时间是未定义的。对于特定的输入值,FunctionBehavior可以抛出异常,此时计算被放弃。

因此,FunctionBehavior代表了把一组输入参数值(通过输入参数给定)转换为一组输出结果值(通过输出参数给定)的功能。FunctionBehavior的执行只依赖于输入的参数值,除了计算结果值不产生其它影响。可以被建模为FunctionBehavior的功能示例包括基本的数学、布尔和字符串函数。

results matching ""

    No results matching ""