关联的约束 对关联有以下常用的约束 l、 implicit:该关联只是概念性的,在对模型进行精化时不再用。 2、 ordered:具有多重性的关联一端的对象是有序的。 3、 changeable:关联对象之间的链(Link)是可变的(添加、修 改、删除)。 4、 addonly:可在任意时刻增加新的链接。 5,0冻结已创建的对象,不能再添加、删除和修改它的 链接。 6、xor:“或约束”,某时刻只有一个当前的关联实例。 人 帐号下 xor 图710对象类的x关联了单位 对消息,链接角色和对象的约束 自定义约束
第七章 帐号 人 单位 图7.10 对象类的xor关联 对关联有以下常用的约束: 该关联只是概念性的,在对模型进行精化时不再用。 具有多重性的关联一端的对象是有序的。 关联对象之间的链(Link)是可变的(添加、修 改、删除)。 可在任意时刻增加新的链接。 冻结已创建的对象,不能再添加、删除和修改它的 链接。 “或约束” ,某时刻只有一个当前的关联实例
7.2.6依赖 依赖关系描述的是两个模型元素(类,组合,用例等) 之间的语义上的连接关系,其中一个模型元素是独立的,另 个模型元素是非独立的(或依赖的)。如图7.11表示类A 依赖于类B的一个友元依赖关系。 类A 《友元》 >类B 图7.11 依赖的形式可能是多样的,针对不同的依赖的形式, 依赖关系有不同的变体( varieties)
第七章 类A 类 B 《友元》
依赖的形式可能是多样的,针对不同的依赖的形式,依 赖关系有不同的变体( varieties) 1>抽象 abstraction:从一个对象中提取一些特性,并用 类方法表示。 ②>绑定( binding:为模板参数指定值,以定义一个新的模 板元素。 3>组合( (com bination)对不同类或包进行性质相似融合。 4许可( permission)允许另一个对象对本对象的访问。 <5>使用( usage声明使用一个模型元素需要用到已存在的 另一个模型元素,这样才能正确实现使用者的功能(包括调用、 实例化、参数、发送)。 <6>跟踪( trace):声明不同模型中元素的之间的存在一些连 接 7>访问或连接acs:允许一个包访问另一个包的内容。 <8>调用(ca):声明一个类调用其他类的操作的方法
第七章 从一个对象中提取一些特性,并用 类方法表示。 为模板参数指定值,以定义一个新的模 板元素。 对不同类或包进行性质相似融合。 允许另一个对象对本对象的访问。 声明使用一个模型元素需要用到已存在的 另一个模型元素,这样才能正确实现使用者的功能(包括调用、 实例化、参数、发送)。 声明不同模型中元素的之间的存在一些连 接。 允许一个包访问另一个包的内容。 声明一个类调用其他类的操作的方法
<9>导出( derive:声明一个实例可从另一个实例导出。 0)友元ind)允许一个元素访间另一个元素,不管被 访问的元素是否具有可见性 11引入( im port):允许一个包访问另一个包的内容并被 访问组成部分增加别名。 12>实例( Instantiation):关于一个类的方法创建了另一个 类的实例声明。 〈13参数 (parameter):一个操作和它参数之间的关系。 14实现( realize):说明和其实之间的关系。 15>精化( refine):声明具有两个不同语义层次上的元素之 间的映射。 16>发送(send):信号发送者和信号接收者之间的关系
第七章 声明一个实例可从另一个实例导出。 允许一个元素访问另一个元素,不管被 访问的元素是否具有可见性。 允许一个包访问另一个包的内容并被 访问组成部分增加别名。 关于一个类的方法创建了另一个 类的实例声明。 一个操作和它参数之间的关系。 说明和其实之间的关系。 声明具有两个不同语义层次上的元素之 间的映射。 信号发送者和信号接收者之间的关系
7.2.7细化 有两个元素A和B,若B元素是A元素的详细描述,则称B,A 元素之间的关系为B元素细化A元素。 细化与类的抽象层次有密切的关系,在构造模型时要经过 逐步细化,逐步求精的过程。 如图712所示,类B是类A细化的结果。 「人员 A B 这是一个类 图713 注释 注释用于对UML语言的元素或实体进行说明,解释和 描述。通常用自然语言进行注释。如图7.13所示。 <Back
第七章 注释用于对UML语言的元素或实体进行说明,解释和 描述。通常用自然语言进行注释。如图7.13所示。 这是一个类 人员