⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 context.java

📁 23种GOF模式的java代码实现
💻 JAVA
字号:
package org.gof.action.state;

/**
 * <p>Title: state模式</p>
 * <p>Description:state模式范例</p>
 * <p>Copyright: Copyright (c) 2007</p>
 * 不同的状态,不同的行为;或者说,每个状态有着相应的行为
 * @author by lbj
 * @version 1.0
 */

public class Context {

  private State state = null; //我们将原来的 Color state 改成了新建的State state;

  //setState是用来改变state的状态 使用setState实现状态的切换
  public void setState(State state) {
    this.state = state;
  }

  public void push() {

    //状态的切换的细节部分,在本例中是颜色的变化,已经封装在子类的handlepush中实现,这里无需关心
    state.handlepush(this);

    //因为sample要使用state中的一个切换结果,使用getColor()
//    Sample sample = new Sample(state.getColor());
//    sample.operate();
  }

  public void pull() {
    state.handlepull(this);
//    Sample2 sample2 = new Sample2(state.getColor());
//    sample2.operate();

  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -