【发布时间】:2015-02-17 12:18:39
【问题描述】:
我读到状态图通常用于描述对象的转换。其中一个对象是类。
您能否给我一个实例,说明如何在 OOP 编程中生成显示类转换的状态图?
我之前用谷歌搜索过,但一无所获。 我有点困惑的部分是在状态图中将类的函数和属性放在哪里。
提前致谢!
【问题讨论】:
标签: class oop uml statechart
我读到状态图通常用于描述对象的转换。其中一个对象是类。
您能否给我一个实例,说明如何在 OOP 编程中生成显示类转换的状态图?
我之前用谷歌搜索过,但一无所获。 我有点困惑的部分是在状态图中将类的函数和属性放在哪里。
提前致谢!
【问题讨论】:
标签: class oop uml statechart
属性/操作是转换的一部分。您可以检查属性作为 Guard 的一部分,它限制状态之间的转换。在状态的进入/退出(和内部)上,您可以执行类的操作。
根据您的评论进行编辑:
假设我有一个名为 Teacher 的类,其中有两个函数名为 getteachername() 和 setteachername(),其中一个属性名为 name。
如果您需要实施约束,您将使用状态图(在以下非常琐碎和愚蠢的情况下)。假设名称只能设置在允许以“Paul”开头的字符串附加到它的规则上。然后从状态isEmpty 开始。它有一个传出转换modify,如果名称设置为“Paul”,它将转到statePaul。在将某些内容附加到 name 时,您可以从该状态转换到相同的状态。从stateOther 只能转至isEmpty。
请注意,这是构建的、愚蠢的和不现实的。但它显示了状态机如何根据使用类的方法来控制属性的变化。
【讨论】: