需要建立乙個應用如下:
weatherdata類:
錯誤示範:
public
class
weatherdata
}
將觀察者模式比作報紙和雜誌的訂閱:
報社的業務就是出版報紙
向某家報社訂閱報紙,只要他們有新報紙出版,就會給你送來。只要你是他們的訂戶,你就會一直收到新報紙
當你不想再看報紙的時候,取消訂閱,他們就不會再送新報紙來
只要報社還在運營,就會一直有人(或者單位)向他們訂閱報紙或取消訂閱報紙
觀察者模式特性:
主題物件管理某些資料
當主題內的資料改變就會通知觀察者
一旦資料改變,新的資料會以某種形式送到觀察者手上
觀察者已經訂閱(註冊)主題以便在主題資料改變時能收到更新
不是觀察者的物件,在主題資料發生改變時不會收到通知
觀察者模式定義了物件之間的一對多依賴,這樣以來,當乙個物件改變狀態時,它的所有依賴者都會收到通知並自動更新。
觀察者模式類圖:
觀察者模式提供了一種物件設計,讓主題和觀察者之間松耦合。
設計原則:為了互動物件之間的松耦合設計而努力。
松耦合的設計之所以能讓我們建立有彈性的oo系統,能夠應對變化,是因為物件之間的相互依賴降到了最低。
應用了觀察者模式的應用類圖:
計之所以能讓我們建立有彈性的oo系統,能夠應對變化,是因為物件之間的相互依賴降到了最低。**
應用了觀察者模式的應用類圖:
深入淺出mybatis 學習筆記 第二章
第二章 mybatis 入門 mybatis開發幫助文件 mybatis spring開發幫助文件 開啟mybatis 3.5.2.zip可以看到下圖的目錄結構,其中mybatis 3.5.2使我們專案開發整合mybatis需要引入的依賴jar包,lib資料夾底下的jar包是mybatis原始碼需要...
複習C 之《深入淺出MFC》第二章
設定靜態資料成員初始化時,不受任何訪問許可權的束縛。每個類中,不論有多少個虛函式,都只有乙個vptr指向虛函式表。類的定義也存在記憶體對齊問題,且sizeof不計入static變數。includeusing namespace std class a class b int main 以上執行答案是...
深入淺出設計模式(二) 工廠模式
簡單工廠模式 factory pattern 又稱為靜態工廠方法 static factory method 它屬於建立型模式。在簡單工廠模式中,可以根據引數的不同返回不同類的例項。簡單工廠模式專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。比如有乙個電腦商,目前生產聯想電腦...