c observer 設計模式

2022-07-25 12:36:15 字數 709 閱讀 8994

observer  :主要包含2個物件

1.subject  被監視者 ,監察物件,必須包含乙個監察著感興趣的東西。

2.observer 監視者, 負責監視subject物件, 當subject物件的狀態發生改變會告知 observer 從而採取相應的方法。

observer 是一種松耦合的設計模式,為了定義物件之間的一對多的依賴關係,以便乙個物件的狀態發生改變,其被依賴的物件會被自動告知並更新。

參考乙個熱水器的例子。

熱水器負責燒水,警報器負責警報,顯示器負責顯示溫度。

那麼熱水器就是作為被監視著,警報器和顯示器對其屬性 溫度 感興趣,當溫度達到95度開始報警,顯示器顯示溫度。

整個事情的發生順序為:

1.註冊:警報器和顯示器告知熱水器對其溫度感興趣。

2.引用:熱水器對警報器和顯示器產生引用

3.執行:當溫度達到一定值時,熱水器呼叫警報器和顯示器的警報方法和顯示方法

namespace

@delegate

}public

class

heater}}

}}

public

class display //

顯示器度

",param);}}

public

class

alarm

度了:", param);}}

}

C Observer設計模式

observer還是比較常見的東西,這裡我們主要介紹c observer設計模式,包括介紹subject 監視物件和observer 監視者等方面。假設我們有個高檔的熱水器,我們給它通上電,當水溫超過95度的時候 1 揚聲器會開始發出語音,告訴你水的溫度 2 液晶屏也會改變水溫的顯示,來提示水已經快...

C Observer設計模式(委託 事件)

observer設計模式中主要包括如下兩類物件 subject 監視物件,它往往包含著其他物件所感興趣的內容。在本範例中,熱水器就是乙個監視物件,它包含的其他物件所感興趣的內容,就是temprature欄位,當這個欄位的值快到100時,會不斷把資料發給監視它的物件。observer 監視者,它監視s...

設計模式 設計模式

物件導向程式設計 oop 的基本概念有 封裝,抽象,繼承,多型等,如何開發出可復用的物件導向軟體一直困擾著軟體開發人員。可復用的物件導向技術包括類的繼承,物件的組合和引數化型別 generic gof的巨著 設計模式 總結出可復用的物件導向的23個設計模式,並且歸類成 建立型模式,結構型模式和行為型...