亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

觀察者模式

GerryZhang JAVA開發工程師
難度中級
時長 1小時56分
學習人數
綜合評分9.53
113人評價 查看評價
9.7 內容實用
9.6 簡潔易懂
9.3 邏輯清晰
notifyObserver() 方法內部調用notifyObserver(null) ;
執行update的時候 會把changed重置為false,這樣每次update之前其實都需要調用setChanged重新開啟
Observer接口定義多一個方法 boolean isInterest(Subject subject),根據目標對象判斷是否感興趣。在Subject抽象類中的notifyObservers方法里,就可以循環判斷每個觀察者是否感興趣,感興趣才調用update方法:
for (Observer o : observers) {
if (o.isInterest(this)) {
o.update(this);
}
}
代碼:http://suo.im/3OaZgm

已采納回答 / aviyy
因為借口定義中會將Observable實現類的引用和推得具體消息都傳過去,所以可以推可以拉,但是如果用notifyObservers()的話,沒有具體消息了,就只能拿引用去拉了。
缺少使用場景的舉例,比如spring、dubbo哪里用到觀察者模式了。這樣才完美。
這樣的代碼設計很爛吧,應該設置成觀察者訂閱天氣,而不是目標隨觀察者變化??粗@樣的代碼,心累
不錯,要與實際結合,才可行
講的很深入,很實用,比較優缺點很詳盡。推拉模型,已經jdk中包實現的過程。大贊a~~
梁海源······
我覺得大家應該學會感恩,不要過于糾結這些聲音什么之類的問題。。。免費分享的教程,太多抱怨,是對別人不尊重!
ctrl+shift+o 別一個一個導包了,看著累
更好的做法是將感興趣的天氣信息放在properties里,在程序中讀取嗎
因為實際情況下觀察者狀態的改變應該是異步的,所以不知道誰先誰后。
你能不能寫完之后把類的執行過程展開看一下??。?/div>
個人覺得老師講得挺好,強烈支持,希望出更多的設計模式課程
黃明他媽是蠟筆小新
黃明聽了想打人系列課程完結
課程須知
學習本課程前,需要具備Java基礎,面向對象的程序設計思想。如果對這些知識不熟悉,可以學習《Java入門第一季》和《Java入門第二季》這兩門課程。
老師告訴你能學到什么?
1、理解觀察者模式的概念和結構 2、掌握如何將觀察者模式應用到項目中,解決項目實際問題 3、掌握觀察者模式的應用場景

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消