?? context.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 + -