状态模式适用于—— 一个对象有多种状态,在不同状态下执行同一操作的行为是不同的。例如,文件在read only、write only、write and read 状态下,执行读、写等操作时的行为是不同的。
状态模式基本思想——用动态绑定(运行时绑定,多态,用虚函数实现)代替if-else或switch,以达到增加状态时,现有代码无需修改(对扩展开放,对修改关闭的原则
http://blog.csdn.net/qq_34111363/article/details/52224515)。
GOF《设计模式》的定义为——允许一个对象在其内部状态改变时改变它的行为。从而使对象看起来似乎修改了其行为。