热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【讲古堂】状态机(一)

2019独角兽企业重金招聘Python工程师标准状态(State)状态,指在对象的生命周期中的某个条件下的状况,在此期间对象将满足某些条件、执行某

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

状态(State)

状态,指在对象的生命周期中的某个条件下的状况,在此期间对象将满足某些条件、执行某些活动活活等待某些事件。

所有对象都有状态,状态是对象执行了一系列活动的结果,当某个事件发生后,对象的状态将发生变化。

在不同状态下,同一对象表现出的行为也是不同的。

一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象叫做有状态的对象,这样的对象状态是从事先定义好的一系列值中取出的。

当一个这样的对象与外部事件产生互动时,其内部状态就会改变,从而使得系统的行为也随之发生变化。

 

行为(Action)

行为指的就是对象的功能,大多行为是有对应的方法或者处理的。

行为的平行性和平等性

平行性指的是各个状态下的行为所处的层次是一样的,相互独立的、没有关联的,是根据不同的状态来决定到底走平行线的哪一条。

行为是不同的,当然对应的实现也是不同的,相互之间是不可替换的。

平等性强调的是可替换性,分别是同一行为的不同描述或实现,因此在同一个行为发生的时候,可以根据条件挑选任意一个实现来进行相应的处理。

如果行为是平行性的,则不可相互替换的;如果行为是平等性的,则是可以相互替换的。

 

状态决定行为

状态之间可以转换

状态之间的变换由外界控制

 


转:https://my.oschina.net/dubenju/blog/652365



推荐阅读
author-avatar
leedaning
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有