使用 Visio 中的工具生成类和对象。
重要: "UML 静态结构图" 在 Visio 2013 和更高版本中不可用。 有关信息,请参阅Visio 中的 UML 图。
本文内容:
将接口添加到类、组件或其他元素
-
在静态结构、组件或部署图中,将棒糖接口形状(由线条和圆形表示)拖动到绘图页上。
-
将不带圆圈的端点粘附到类组件或其他元素上的连接点 。
-
双击 "界面" 形状以添加名称、操作和其他属性值。
提示: 你还可以使用与类类似的矩形接口形状来表示接口。 当您想要显示接口操作的列表时,请使用此形状。
提示: 若要更改为某个接口显示的形状类型,请右键单击 "界面" 形状,然后单击 "显示为类状的界面" 或 "显示为棒糖形接口"。
指示类和接口或其他元素之间的实现关系
-
在静态结构图中,右键单击任意类形状(class、参数化的类、实用工具或元类),单击 "形状显示选项",然后在 "常规选项" 下,选择 "实现链接"。
-
将 "类" 形状上的 "实现" 链接的控制手柄 粘附到接口、类或其他元素上的连接点 。
向分类器添加接收
-
双击表示要向其添加接收的分类器的形状,然后单击 "接收" 类别。
-
单击 "新建" 以添加新的接收。
-
单击 "接收" 类别。 在 "接收" 列中键入接收的名称。 在 "信号" 列中,选择分类器的信号,由接收进行准备,做出响应,然后选择所需的其他属性值。
注意: 信号元素必须存在于模型中,才能在信号列表中使用。
-
在 "异常" 类别中,选择可由接收生成的异常(如果有)。
注意: 异常元素必须存在于模型中,才能在信号列表中使用。
-
添加所需的任何约束或标记值,然后单击"确定" ,直到关闭形状的 " UML 属性" 对话框。
向类添加模板参数
-
双击表示要向其添加参数的元素的形状(参数化的类、类、实用工具、元类或绑定元素),然后单击 "模板参数"。
-
单击 "新建" 以添加新参数。
-
在 "模板参数" 列表中:
-
若要编辑现有参数,请在 "模板参数" 列中键入新名称。
-
若要编辑类型,请单击 "类型" 字段,单击箭头,然后从列表中选择类型。
-
若要添加文档,请在 "文档" 框中键入。
-
-
单击"确定"接受更改并关闭 " UML 类属性" 对话框。
提示: 通过向类形状添加参数,可以使任何类成为参数化的类。 若要隐藏任何类形状上的参数,请右键单击该形状,单击 "形状显示选项",然后在 "隐藏" 下,选择 "模板参数"。
向类、数据类型或接口添加操作
-
双击表示要添加操作的元素的形状(类、数据类型或接口),然后单击左侧的 "类别" 列表中的 "操作"。
-
单击 "新建" 以添加新操作。
-
选择 "属性" 以编辑项目的属性。
属性
说明
构造
从下拉列表中选择所需的构造型。 如果未列出要使用的构造型,则可以通过单击 " UML " 菜单上的 "构造型" 添加新的构造型或编辑现有构造型。
前缀
在此处键入要用于进一步标识操作返回类型的任何特定于语言的批注文本。
后缀
在此处键入要用于进一步标识操作返回类型的任何特定于语言的批注文本。
返回类型
为 操作 返回的值选择实现类型。 如果所需的 数据类型 未列出,请右键单击树视图中的数据类型包,指向 "新建",然后单击 "数据类型",或者创建新类。
表达式
在 "前缀"、"返回类型" 和 "后缀" 下显示已添加的数据的结果。
了解
选择适用于 操作 的 可见性 (公共、私有或保护)。 公共表示该操作可公开用于任何类。 Protected 指该操作在类及其子类内可用。 Private 表示操作只能在类内部使用。
OwnerScope
如果 操作 仅适用于使用类创建的对象,则为所有者范围选择 "实例"。 如果操作可应用于类本身,请选择 "分类器"。
IsPolymorphic
选择是否可由子类覆盖 操作 的实现,方法可以由子类定义。 如果实现操作的方法继承自所有后代的更改,则保持清除。
IsQuery
选择 操作 的应用将不会修改其元素的状态。
通话并发
并发调用指定对同一被动实例的并行调用的语义(即来自具有 IsActive = false 的分类器的实例)。 "顺序" 表示一次只能处理一个实例的一个调用。 "受保护" 表示来自并发线程的多个调用可以同时出现,但只有一个调用可以在第一个操作完成之前被阻止。 并发意味着来自并发线程的多个调用可以同时出现,并且全部可以同时进行。
单击"确定"保存这些设置。
-
根据需要选择方法以编辑项目的方法。
属性
说明
课堂名称
" UML 模型图" 模板将自动提供有关类名称的完整信息。 您不能编辑此信息。
操作名称
显示可具有此特定类的方法主体的所有操作。 这包括来自当前类的所有操作、来自基类的多态操作和由该类实现的接口的操作。
选择要为其指定方法的操作。
具有方法
选择操作是否具有实现它的方法。
Language
选择编写方法所需的语言。
方法体
键入方法的主体。
例如,简单的 c + + 方法正文可以是:
{ if (x == 0) { RunCommand(); ProcessResults(); } }
将模板参数绑定到类
-
将 "绑定元素" 形状从 " UML 静态结构" 模具拖动到绘图页上,在 "参数化的类" 形状旁边放置一个要绑定的参数。
-
将 "绑定" 形状拖到绘图页上,并将不带箭头的端点粘附到绑定元素上 连接点。
-
将带有箭头的绑定终结点粘附到参数化的类形状上的连接点。
-
双击 "绑定" 形状,然后单击 "绑定参数"。
-
在 "绑定参数" 下,选择要将类型绑定到的参数(如果该参数没有指定类型)或选择一个值(如果该参数具有指定类型)。 单击 "属性",选择键入或键入所需的值,然后单击"确定"。
-
单击"确定"关闭 " UML 绑定属性" 对话框。
与参数化的类相关联的属性和操作将传递到绑定元素。 已分配给类的未绑定参数(没有指定类型)作为属性类型或操作返回类型,将由上述步骤5中指定的类型替换到绑定元素中。
创建对象作为类的实例
-
在静态结构图中,将一个 "类" 形状拖到绘图页上,表示希望该对象成为其实例的类。
-
可选 双击 "类"形状以打开 " UML 类属性" 对话框。 单击 "属性",然后单击 "新建",将属性添加到类。 单击“确定”,然后再次单击“确定”。
-
将 "对象" 形状拖到绘图页上,然后双击该形状。
-
在 " UML 对象属性" 对话框中,单击 "对象",然后为对象键入名称。 在 "类" 下,选择希望对象成为其实例的类。
-
单击 "属性值",然后选择要向其添加实例值的属性,然后单击 "属性"。 键入属性的值。
-
单击 "属性链接",添加所需的任何其他属性值,然后单击"确定"。
-
对要添加实例值的所有属性重复步骤5和步骤6,然后单击"确定"。
从类中删除模板参数
-
双击形状(参数化的类、类、实用工具、元类或绑定元素),表示具有要删除的参数的元素,然后单击 "模板参数"。
-
选择要删除的模板参数,单击 "删除",然后单击"确定"。
编辑类的模板参数
-
双击形状(参数化的类、类、实用工具、元类或绑定元素),表示包含要编辑的参数的元素,然后单击 "模板参数"。
-
在 "模板参数" 列表中,对于要编辑的每个参数,单击 "类型" 字段。 然后,单击箭头,从列表中选择一种类型。
注意: 你可以将没有指定类型的参数分配为属性作为返回类型。
-
在 "模板参数" 列表中,为要编辑的每个参数键入新名称。
-
在 "文档" 框中,键入所需的文档。
-
单击 "新建" 以添加另一个参数(并执行步骤3到步骤5),或单击"确定"以关闭 " UML 类属性" 对话框。
隐藏类的属性和操作部分
-
右键单击 "类" 形状,然后单击 "形状显示选项"。
-
在 " UML 形状显示选项" 对话框中的 "隐藏" 下,选择 "属性" 以隐藏 "属性" 部分,然后选择 "操作" 以隐藏 "操作" 部分。
提示: 若要再次显示 "属性" 和 "操作" 部分,请右键单击该形状,单击 "形状显示选项",然后清除 "属性和操作"。
指示程序包中的类可以引用
-
在程序包图表中,将 "依赖关系" 形状拖到绘图页上。
-
将不带箭头的相关性终结点粘附到将引用另一个包中的类的包上的连接点。
-
将带有箭头的相关性终结点粘附到连接点上 包含将引用的目标类的程序包。
-
双击 "相关性" 形状以打开 " UML 相关性属性" 对话框。
-
在 "名称" 下,键入依赖关系的名称。 在 "构造型" 下,选择 "导入",然后单击"确定"。
注意: 使用 <<导入的程序包连接导入>> 依赖关系仅指示可以引用类。 你仍然需要为目标类设置相应的可见性。
通过实现类显示类型的实现
-
在静态结构图中,将 "类" 形状拖到绘图页上。 双击该形状。
-
在 " UML 类属性" 对话框中,单击 "类",然后键入类的名称。 在 "构造型" 下,选择 "类型",然后单击"确定"。
-
将第二个 "类" 形状拖到绘图页上。 双击该形状。
-
在 " UML 类属性" 对话框中,单击 "类",然后键入类的名称。 在 "构造型" 下,选择 "实现类",然后单击"确定"。
-
右键单击实现类,然后单击 "形状显示选项"。 在 " UML 形状显示选项" 对话框中的 "常规选项" 下,选择 "实现链接",然后单击"确定"。
-
拖动实现类形状上的控制手柄 ,创建表示实现关系的连接线。
-
将 "实现连接线" 箭头上的端点粘附到表示该类型的 "类" 形状上 的连接点。