【问题标题】:Describe transition of a class in UML's Statechart Diagram在 UML 的状态图中描述类的转换
【发布时间】:2015-02-17 12:18:39
【问题描述】:

我读到状态图通常用于描述对象的转换。其中一个对象是类。

您能否给我一个实例,说明如何在 OOP 编程中生成显示类转换的状态图?

我之前用谷歌搜索过,但一无所获。 我有点困惑的部分是在状态图中将类的函数和属性放在哪里。

提前致谢!

【问题讨论】:

    标签: class oop uml statechart


    【解决方案1】:

    属性/操作是转换的一部分。您可以检查属性作为 Guard 的一部分,它限制状态之间的转换。在状态的进入/退出(和内部)上,您可以执行类的操作。

    根据您的评论进行编辑:

    假设我有一个名为 Teacher 的类,其中有两个函数名为 getteachername()setteachername(),其中一个属性名为 name

    如果您需要实施约束,您将使用状态图(在以下非常琐碎和愚蠢的情况下)。假设名称只能设置在允许以“Paul”开头的字符串附加到它的规则上。然后从状态isEmpty 开始。它有一个传出转换modify,如果名称设置为“Paul”,它将转到statePaul。在将某些内容附加到 name 时,您可以从该状态转换到相同的状态。从stateOther 只能转至isEmpty

    请注意,这是构建的、愚蠢的和不现实的。但它显示了状态机如何根据使用类的方法来控制属性的变化。

    【讨论】:

    • 是的,如 UML 状态机图示例 uml-diagrams.org: DICOM Hosted Application Life Cycle 和它的示例邻域
    • 我仍然对将事物定义为状态图感到困惑。假设我有一个名为“teacher”的类,它有两个名为“getteachername()”和“setteachername()”的函数,一个名为“name”的属性。那么如何根据该类生成状态图呢?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-18
    • 2019-09-25
    • 1970-01-01
    相关资源
    最近更新 更多