状态是对象生命过程中的条件或情况,在此期间它满足某些条件、执行某些活动或等待某些事件。对象在有限的时间段内保持一种状态。
例如,家中的加热器可能处于以下四种状态中的任何一种:(1)空闲(等待
开始加热房屋的命令),(2)激活(它的燃气打开,但它正在等待达到
温度), (3) Active (它的气体和鼓风机都打开), 和 (4) ShuttingDown (它的气体关闭但
它的鼓风机打开, 冲洗系统的余热)。
转换是两种状态之间的关系,表示处于第一种状态的对象在
发生指定事件并
满足指定条件时将执行某些动作并进入第二种状态。在这种状态变化时,转换被称为触发。在转换
触发之前,该对象被称为处于源状态;发射后,据说它处于目标状态。
例如,当发生诸如 tooCold(带有参数 desiredTemp)之类的事件时,Heater 可能会从Idle状态转换为 Activating 状态。