美文网首页
行为型模式 --- 状态模式

行为型模式 --- 状态模式

作者: 十二找十三 | 来源:发表于2020-09-06 21:53 被阅读0次
    核心思想就是:当对象的状态改变时,同时改变其行为
    
    package study.org;
    
    public class Demo {
        public static void main(String[] args) {
            State state = new State();
            Context context = new Context(state);
    
            // 设置第一种状态
            state.setValue("state1");
            context.method();
    
            // 设置第二种状态
            state.setValue("state2");
            context.method();
        }
    }
    
    class State {
        private String value;
    
        public String getValue() {
            return value;
        }
    
        public void setValue(String value) {
            this.value = value;
        }
    
        public void method1() {
            System.out.println("execute method1!");
        }
    
        public void method2() {
            System.out.println("execute method2!");
        }
    }
    
    class Context {
    
        private State state;
    
        public Context(State state) {
            this.state = state;
        }
    
        public State getState() {
            return state;
        }
    
        public void setState(State state) {
            this.state = state;
        }
    
        public void method() {
            if (state.getValue().equals("state1")) {
                state.method1();
            } else if (state.getValue().equals("state2")) {
                state.method2();
            }
        }
    }
    

    相关文章

      网友评论

          本文标题:行为型模式 --- 状态模式

          本文链接:https://www.haomeiwen.com/subject/bfjhektx.html