Java設計模式之行為型模式(狀態模式)

2021-07-26 18:42:27 字數 678 閱讀 7201

狀態模式允許乙個物件在其內部狀態改變時改變它的行為。物件看起來似乎修改了它的類。

uml圖:

**已經上了注釋,很簡單,大家領會一下狀態模式的思想。

/**

* @author hanlin wang

*/public

class statemode

}//定義狀態類

class state

public string getvalue()

public

void

setvalue(string value)

}//定義上下文類,監視state類的變化

class context

public

static

void

setstate(state state)

public

static

void

handler()

}}//定義事件處理類

class react

public

static

void

monitor2()

}

java設計模式之行為型模式 策略模式

策略模式,指物件有某個行為,但是在不同的場景中,該行為有不同的實現演算法。比如每個人都要 交個人所得稅 但是 在美國交個人所得稅 和 在中國交個人所得稅 就有不同的算稅方法。許多相關類僅僅是行為不同。需要使用乙個演算法的不同實現。演算法使用了客戶不應該知道的資料。策略模式可以避免暴露複雜的 與演算法...

Java設計模式之行為型模式(命令模式)

命令模式由三部分構成 invoker 命令觸發器 executor 命令處理器 responder 命令響應器 命令模式將客戶端 也就是這裡的invoker命令觸發器 與服務端 responder命令響應器 兩者解耦。客戶端只需要關注自己傳送哪一條命令,而無需關注服務端的實現細節 服務端只需關注命令...

23種設計模式之行為型模式 策略模式

策略模式它定義了演算法家族,分別封裝起來,讓它們之間可以相互替換,此模式讓演算法的變化,不會影響到使用演算法的客戶。減少各種演算法類與使用演算法類之間的耦合 比如 商場收銀時如何 用打折還是返利,其實都是一些演算法,用工廠來生成演算法物件,這沒錯,但演算法本身只是一種策略,最重要的是這些演算法是隨時...