BookedState
+ void handle()
Context
State state
+ void setState(State state)
State
FreeState
定一个接口,封装与Context的一特定状态相关的行为
接口和类
public void setState(State state) { this.state = state; this.state.handle(); }
State抽象接口的子类,定义具体状态