状态模式的核心在于
1. 状态的转换导致行为(Handle)的差异,比如人的状态是饿的时候,吃(Handle)的行为是2个馒头,人状态是不太饿的时候,吃(Handle)的行为是半个馒头
2. State的对外接口(Handle)不因状态而改变,比如不管人是饿还是不饿,都有吃的行为
3. 如果某个ConcreteState不响应某Handle,需要设计基类默认行为或者处理为不响应
时间: 2024-12-16 02:27:57
状态模式的核心在于
1. 状态的转换导致行为(Handle)的差异,比如人的状态是饿的时候,吃(Handle)的行为是2个馒头,人状态是不太饿的时候,吃(Handle)的行为是半个馒头
2. State的对外接口(Handle)不因状态而改变,比如不管人是饿还是不饿,都有吃的行为
3. 如果某个ConcreteState不响应某Handle,需要设计基类默认行为或者处理为不响应