如果一个类有很多个operation(动作)都需要不同的State(状态)去实现的话,这个时候不如把State抽象出来,然后在State里实现这个operation

operation不再进行扩展的时候可以用这种模式
线程的状态迁移

有限状态机
它的状态是有限的,状态和状态之间的迁移和变化是通过不同的动作action来的,状态和状态之间是可以互相move的
new
Ready(就绪)
Running(正在运行)
Teminated(结束)
(阻塞)
TimedWaiting
Waiting
Blocked
线程
状态
根据动作迁移
