Android設計模式之觀察者模式

2021-07-26 18:50:52 字數 1307 閱讀 9526

所謂的觀察者模式,就是觀察者和被觀察者之間的關係問題。用乙個簡單的生活案例來說明,觀察者是我們訂報紙的人,被觀察者是報紙社,只要我們訂閱了報紙,當有新的新聞出來的時候,報紙社就會印發報紙來通知我。這就是簡單的觀察者模式。

/**

* *@author觀察者模式

* 觀察者模式是一種行為設計模式。觀察者模式的用途是,當你對乙個物件感興趣的時候

* 希望在它每次發生變化的時候獲得通知。在觀察者模式中,觀察另外乙個物件狀態的物件叫做

* observer觀察者,被觀察的物件叫做subject被觀察者。

*/public

inte***ce

subject

public

class

mytopic

implements

subject

public

void

register(observers obj)

public

void

unregister(observers obj)

/*其實在這裡我們可以推出listview中的notifydatasetchanged()

也是當集合或者陣列更新的時候,通知每乙個觀察者去更新,從這裡我們明白listview 中的adapter其實也是乙個觀察者模式

*/public

void

notifyobservers() else

//這裡就是用乙個for迴圈,向每個以及該註冊的觀察傳送訊息

for (observers obj:observerslocal) }}

public object getupdate(observers obj)

public

void

postmessage(string msg)

}

public

inte***ce

observers

public

class

mytopicsubscriber

implements

observers

public

void

update() else

}public

void

setsubject(subject su)

public

class

observerpatterntest

}

Android設計模式之觀察者模式

觀察者模式,是一種非常常見的設計模式,許多系統中隨處可見,尤其是涉及到資料狀態發生變化需要通知的情況下。意圖主要是為了定義物件之間的一種一對多的依賴關係,當這個物件的狀態發生改變時,所有依賴它的物件就會得到通知,並被自動更新。結構 這是乙個簡單的觀察者模式,目標物件可以新增和刪除觀察者,當自己某種狀...

Android 觀察者設計模式

觀察者模式 observer 是軟體設計模式的一種,定義了物件之間一種一對多的關係,也 就是當乙個物件資料發生變化時,會通知與之依賴的其他物件,以相應其資料變化,這種當 目標物件資料發生變化時,與之對應的觀察者物件資料隨之發生變化的,具有一對多通知關 系的設計模式叫做觀察者設計模式.觀察者設計模式中...

Android設計模式 觀察者模式

觀察者模式又叫訂閱 發布模式,它的主要作用就是解耦,將觀察者和被觀察者解耦,使它們的依賴性變的更小。在這個模式中主要就是被觀察者通知所有觀察者發生改變,及時的更新。listview的notifydatasetchanged 改變介面 broadcastrecevier也是運用此設計模式。角色介紹 s...