設計模式之狀態模式IFORNOIF 二十二

2022-08-17 13:18:10 字數 450 閱讀 7698

今天大風大雨, 但心情還行, 繼續擼dota

狀態模式(state pattern)定義

當乙個物件的內在狀態改變時允許改變其行為, 這個物件看起來像是改變了其類

這在我們開發的業務中太常見了, 角色許可權的管理, 給予不同的許可權, 不同角色的操作就會發生改變

該類圖中包含三個角色

狀態模式解決的問題
總結: 狀態模式適用某乙個物件的行為取決於該物件的狀態, 並且該物件的狀態在執行時的轉換, 又或者有很多的判斷, 而這些判斷只是因為某個不同而不斷的切換(該判斷下的物件的實現複雜的情況下)

設計模式之狀態模式

一 作用 允許乙個物件在其內部狀態改變時改變它的行為,物件看起來似乎修改了它的類。其別名為狀態物件 objects for states 狀態模式是一種物件行為型模式。二 例子 狀態抽象類 abstract class state 具體狀態類,每個狀態對應乙個類 class concretestat...

設計模式之 狀態模式

gof 設計模式 中給狀態模式下的定義為 允許乙個物件在其內部狀態改變時改變它 的行為。這個物件看起來似乎修改了它的類。看起來,狀態模式好像是神通廣大 居然能夠 修改自身的類 能夠讓程式根據不同的外部情況來做出不同的響應,最直接的方法就是在程式中將這些可能發生的外部情況全部考慮到,使用 if els...

設計模式之狀態模式

定義 允許乙個物件在其內部狀態變化時改變它的行為,物件看起來似乎修改了它所屬的類。類圖 說明 context表示環境類,它定義了客戶應用程式感興趣的介面,並維護乙個concretestate子類的例項,這個例項用於定義當前狀態 state表示抽象狀態類,它定義了乙個介面以封裝與context的乙個特...