状态图(Statechart diagram)——UML之图五

状态图

      

       我们先来想一个例子。当我们每次给10086打电话的时候,是不是会自动进入语音流程:“欢迎使用··· 业务查询请按一 手机充值请按二···人工服务请安0···”,你是不是和我一样常常等到最后再心满意足的按“0”等待人工帮助我们?

      那么,我们从呼叫中心的位置想一想,在某一时刻,一定是有客服离席的,或是电话接通状态的等等情况。为了能让用户在最快的时间内接通到工作人员,我们需要什么?没错,简单的说,就是一张图记录当前状态各个席位的情况。而这张图就是状态图。

      从概念上说,状态图就是用来描述一个特定对象所有可能的状态以及由于各种事件的发生而引起的状态之间的转移。通常我们创建一个UML状态图是为了以下的研究目的:研究类、角色、子系统、或组件的复杂行为。


状态机

      

        描述了一个对象或一个交互在生命期内响应时间所经历的状态序列。单个类或一组类之间的协作的行为可以用状态机来描述。一个状态机设计到一些其他元素。包括状态,转换(从一个状态到另一个状态的流),事件(触发一个转换的响应)。


我们先看一下整体的内容。


下面让我们学习一下状态图的图符。


图符




电话机状态图


        实际的生活中是用一张状态图,就能更方便我们对状态切换的理解。比如这电话机状态图。从图中看,来电显示状态时,摘机则电话处于使用状态。若超时,则转到空闲状态。在遇到状态复杂和各种切换时,你是不是想到了用一张状态图来表达你的idea?





举机房收费系统中一个简单的小例子,未登陆和登陆之间的转换。


以上是对状态图的初步理解。希望各位多多赐教。

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值