Android设计模式

State 状态模式

2019-12-07  本文已影响0人  Charles1993

设计原则学习笔记
设计模式学习笔记

作用

将一个类在不同状态下的操作组合起来,成为一个类。方便不同状态下的操作切换和扩展。

类图

状态模式

Java实现

//定义状态
public interface State {
    void handle();
}
public class StateA implements State {
    @Override
    public void handle() {
        //todo do something A
    }
}
public class StateB implements State {
    @Override
    public void handle() {
        //todo do something B
    }
}
//定义Context
public class Context {
    private State state = new StateA();
    public void request() {
        state.handle();
    }
    public void setState(State state) {
        this.state = state;
    }
}
//客户端在不同状态下有不同行为
public class Client {
    public static void main(String[] args) {
        Context context = new Context();
        context.request();
        context.setState(new StateB());
        context.request();
    }
}

Android源码中的应用

上一篇下一篇

猜你喜欢

热点阅读