如何在 UML 序列图的自消息方法中绘制方法
How to draw methods inside self message methods for UML sequence diagrams
我正在尝试为如下所示的代码绘制序列图:
Class Z:
method y()
Class X:
method w()
Class A inherits X & Z:
method b() {
calls y()
calls w()
}
A a;
a.b()
一开始我觉得应该画一个这样的自传方法:
┌─┐
│A│
└┬┘
┌┴┐
│ │────┐
│ │ │ b()
│ │<───┘
│ │
│ │
└┬┘
┌┴┐
│A│
└─┘
但后来我意识到这并没有显示 b()
如何调用 y()
,所以我考虑了这个:
┌─┐ ┌─┐ ┌─┐
│A│ │Z│ │X│
└┬┘ └┬┘ └┬┘
┌┴┐ y() │ │
│ │ ─────────>│ │
│ │ │ │
│ │ w() │
│ │ ──────────────────────>│
└┬┘ │ │
│ return │
│<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
┌┴┐ ┌┴┐ ┌┴┐
│A│ │Z│ │X│
└─┘ └─┘ └─┘
但是这个没有显示 b()
。有没有一种方法可以绘制此序列图,以便我可以展示这两种方法?
b 的调用似乎是由与 class 相关联的东西构成的,所以假设初始调用者使用找到的消息并不重要,那么y 和 w 应用于 A 执行 b[=20 的实例=] 无论这些操作是继承的,所以:
@bruno 的回答是正确的。他没有包含 return 消息。这是我用 ZenUML (https://app.zenuml.com) 创建的图表。
免责声明:我是 ZenUML 的作者。
我正在尝试为如下所示的代码绘制序列图:
Class Z:
method y()
Class X:
method w()
Class A inherits X & Z:
method b() {
calls y()
calls w()
}
A a;
a.b()
一开始我觉得应该画一个这样的自传方法:
┌─┐
│A│
└┬┘
┌┴┐
│ │────┐
│ │ │ b()
│ │<───┘
│ │
│ │
└┬┘
┌┴┐
│A│
└─┘
但后来我意识到这并没有显示 b()
如何调用 y()
,所以我考虑了这个:
┌─┐ ┌─┐ ┌─┐
│A│ │Z│ │X│
└┬┘ └┬┘ └┬┘
┌┴┐ y() │ │
│ │ ─────────>│ │
│ │ │ │
│ │ w() │
│ │ ──────────────────────>│
└┬┘ │ │
│ return │
│<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
┌┴┐ ┌┴┐ ┌┴┐
│A│ │Z│ │X│
└─┘ └─┘ └─┘
但是这个没有显示 b()
。有没有一种方法可以绘制此序列图,以便我可以展示这两种方法?
b 的调用似乎是由与 class 相关联的东西构成的,所以假设初始调用者使用找到的消息并不重要,那么y 和 w 应用于 A 执行 b[=20 的实例=] 无论这些操作是继承的,所以:
@bruno 的回答是正确的。他没有包含 return 消息。这是我用 ZenUML (https://app.zenuml.com) 创建的图表。
免责声明:我是 ZenUML 的作者。