步骤一:建立状态类State
public class State {
private String value;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public void method1() {
System.out.println("我是在线状态");
}
public void method2() {
System.out.println("我是离线状态");
}
}
步骤二:建立控制状态类 Context
public class Context {
//引入状态实例
private State state;
public Context(State state) {
super();
this.state = state;
}
public State getState() {
return state;
}
public void setState(State state) {
this.state = state;
}
public void method() {
if(state.getValue().equals("up")) {
state.method1();
}else if(state.getValue().equals("down")) {
state.method2();
}
}
}
步骤三:测试
public class Test {
public static void main(String[] args) {
State state=new State();
Context context=new Context(state);
state.setValue("up");
context.method();
state.setValue("down");
context.method();
}
}