定义:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。
状态:状态表示曾经做过什么,不关心状态是怎么形成的,状态是指到达这一个状态所走过的路,即曾经干过什么事情,标识只是指当前的一种属性。
判断状态是否等价:不看前面看后面,后面执行相同操作后进入同一个状态,则说明这两个状态是等价的,即是同一个状态或合并为一个状态。
目的:用类来固化上下文环境,而简化前方操作和前方的方法。
特征:state具有唯一性
意义:接受在这个状态下执行的动作后是进入什么样的状态。
状态与标识的区别:状态是有上下文的,所以都是与context一起出现,而标识是没有上下文的。
状态模式与策略模式的区别:
作业:词法编译器,检查字符串String 的声明,以及单行注释// 和 /*...*/
状态分解:
待输入状态--S 正确的编辑String状态 --String整个字符串按顺序输入才算正确,进入待编辑状态 --只接受空格和双斜线 --等号 字符串正常输入
/ 待输入单行注释状态 异常状态 --异常状态 --双斜线注释状态
空格 依然进入待输入状态 --异常状态
--/ 单行注释状态,以后随便输入
*单行注释未结束状态,随便输入,直到看到*/
待编辑状态,正确输入状态,注释状态,异常状态,
共享目录\设计模式作业\迭代器模式
共享目录\设计模式作业\状态模式\State01
网友评论