UML-状态图

作者: MoringChen | 来源:发表于2018-12-13 17:33 被阅读19次

状态图有什么用

状态图用于描述各个状态的变化情况,当你陷入了繁杂大量的状态转换的时候,使用状态图会让这一切都变得清晰起来

状态图的组成

  • 简单状态(Simple State)
    简单状态没有子状态机和域,UML中使用带拐点的矩形标示简单状态,并且状态名字写在矩形内部。
状态图.png
  • 组合状态(Composite State)
    组合状态被定义为用用子状态或者嵌套状态的状态行为,子状态可以是顺序发生的也可以是并发发生,组合状态里至少有一个域,如下图含有一个域


    组合状态
  • 起始状态(Initial Pseudostate),终止状态(Final State),(行为转移)Behavioral Transition

起始状态和终止状态.png

如图黑色实心为起始状态,末端双环圆为终止状态,中间连接线为行为转移,其中isAuthed为一个guard说明满足该条件才会进行状态转移,然后执行函数auidt。

官方例子

如下图是一个Java线程状态机图(协议状态机图)

官方例子.png

如图 New状态是一个线程被创建但是没有执行start()方法时候状态。
在JVM看来当一个线程在Runnable时候它是在运行,但是在os看来却未必,因为线程可能没有获取到处理器。所以可以考虑把Runnable看为一个内部有两个子状态的组合状态,当一个线程状态进入Runnable时候,首先进入Ready状态(其他资源已经就绪,就差cpu),由线程调度策略决定何时把这个线程从Ready转变为running状态,函数Thread.yield() 则知识线程调度暂定当前线程执行,把线程从running状态转变为Ready状态…

(开篇)UML-开篇

相关文章

  • UML-状态图

    状态图有什么用 状态图用于描述各个状态的变化情况,当你陷入了繁杂大量的状态转换的时候,使用状态图会让这一切都变得清...

  • UML建模之状态图(Statechart Diagram)

    一、状态图简介(Brief introduction) 状态图(Statechart Diagram)主要用于描述...

  • uml设计

    如何绘制状态图

  • UML-State Machine Diagram

    流程可以由活动图来表达,要是表示一个事物的某些状态,首选状态图。状态图的元素与活动图类似。 1.状态图的两个状态的...

  • UML-开篇

    为什么要写这篇文章 网上正规的关于UML图的书或文章,都是飙一堆让人看不明白的术语,可能为了看明白一个简单的东西,...

  • React组件生命周期

    问题 理解React组件的生命周期 知识点 React流程状态图 注意:流程状态图为使用React.createC...

  • SystemUI之通知图标控制

    本文是基于Android 10源码分析的。 SystemUI之状态图标控制 分析了状态栏上状态图标(例如 wifi...

  • 互联网技术栈 『Contents Catalog』

    截止 2018-5 编程语言与计算机基础 Java书单——由入门到上天UML-类间关系Java解读-ThreadL...

  • <UML基础、案例与应用>-状态图

    行为元素 展示UML模型部件如何随时间变化。状态图是一种行为元素。只是对单个对象建立模型。 增加状态细节 状态图标...

  • 一个简单的词法分析程序

    最近上《编译原理》这门课程,老师要求我们自己写一个词法分析程序。要求如下: 状态图 首先我们将文法转化为状态图~ ...

网友评论

    本文标题:UML-状态图

    本文链接:https://www.haomeiwen.com/subject/gkmbhqtx.html