行为型模式 状态模式

1 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。
interface State{
    public void doAction(Context context);
}
class StartState implements State{
    @Override
    public void doAction(Context context) {
        System.out.println("Ready");
        context.setState(this);
    }
    @Override
    public String toString() {
        return "Go";
    }
}
class Context{
    private State state;
    public Context() {
        state = null;
    }
    public State getState() {
        return state;
    }
    public void setState(State state) {
        this.state = state;
    }
}
public class Test{
    public static void main(String[] args){
        Context context = new Context(); 
        new StartState().doAction(context); //赋值
        System.out.println(context.getState().toString());//取值
    }
}

猜你喜欢

转载自blog.csdn.net/qq_28197211/article/details/80482567