复制代码代码如下:php
setState($state);}public function setState($state){$this->_state = $state;}public function request(){$this->_state->display();$this->_state->handle($this);}}class StateA implements State{public function handle($context){$context->setState(new StateB());}public function display(){echo "state A";}}class StateB implements State{public function handle($context){$context->setState(new StateC());}public function display(){echo "state B";}}class StateC implements State{public function handle($context){$context->setState(new StateA());}public function display(){echo "state C";}}// 实例化一下$objContext = new Context(new StateB());$objContext->request();$objContext->request();$objContext->request();$objContext->request();$objContext->request();
