天天看点

设计模式——状态模式

状态模式(状态对象模式):将状态和行为绑定起来,允许一个对象内部状态改变的时候,改变其行为!

本质上是将行为封装在状态中。

角色:1、状态行为的抽象 2、实际状态对象  3、状态环境(将状态作为成员变量)

下面看实际代码:

状态行为抽象

设计模式——状态模式

ILoan

实际状态(状态对应行为的实现)

名字命名不太恰当,实际上这个类并不是person,而是person的状态!

设计模式——状态模式

GeneralPerson

设计模式——状态模式
设计模式——状态模式

VIPPerson

状态环境

设计模式——状态模式
设计模式——状态模式

Person

测试

设计模式——状态模式
设计模式——状态模式

StateTest

继续阅读