您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
03 Java發布訂閱模式(設計模式-快餐簡解-【觀察者模式】)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-22 02:42:46【】8人已围观
简介cvoidupdate(){phone=teachergetPhone();}}//ClientjavapackageyoungmastermodelObserver;importjavautilVe
phone = teacher getPhone();
}
}
//Client java
package youngmaster model Observer;
import java util Vector;
/
*** @author youngmaster
* @E mail:young * @version myEclipse
* @create time 上午 : :
*/
/
***測試類
*/
public class Client {
/
*** @param args
*/
@SuppressWarnings( unchecked )
public static void main(String[] args) {
Vector students = new Vector();
Teacher teacher = new Teacher();
for (int i = ; i < ; i++) {
Student student = new Student( student + i teacher); students add(student); teacher addObserver(student);
}
teacher setPhone( );
for (int i = ; i < ; i++)
((Student) students get(i)) show();
System out println( \n============================\n );
teacher setPhone( );
for (int i = ; i < ; i++)
((Student) students get(i)) show();
}
lishixin/Article/program/Java/gj/201311/27566
android消息推送GCM、XMPP、MQTT三種方案的優劣是什么?
Android推送方案分析(MQTT/XMPP/GCM)
本文主旨在于,對目前Android平臺上最主流的幾種消息推送方案進行分析和對比,比較客觀地反映出這些推送方案的優缺點,幫助大家選擇最合適的實施方案。
方案1、使用GCM服務(Google Cloud Messaging)
簡介:Google推出的云消息服務,即第二代的G2DM。
優點:Google提供的服務、原生、簡單,無需實現和部署服務端。
缺點:Android版本限制(必須大于2.2版本),該服務在國內不夠穩定、需要用戶綁定Google帳號,受限于Google。
方案2、使用XMPP協議(Openfire + Spark + Smack)
簡介:基于XML協議的通訊協議,前身是Jabber,目前已由IETF國際標準化組織完成了標準化工作。
優點:協議成熟、強大、可擴展性強、目前主要應用于許多聊天系統中,且已有開源的Java版的開發實例androidpn。
缺點:協議較復雜、冗余(基于XML)、費流量、費電,部署硬件成本高。
簡介:輕量級的、基于代理的“發布/訂閱”模式的消息傳輸協議。
優點:協議簡潔、小巧、可擴展性強、省流量、省電,目前已經應用到企業領域(參考:買粉絲://mqtt.org/software),且已有C++版的服務端組件rsmb。
缺點:不夠成熟、實現較復雜、服務端組件rsmb不開源,部署硬件成本較高。
設計模式-快餐簡解-【觀察者模式】
【 觀察者模式應用場景舉例 】
比如在玩 極品飛車 這款游戲 每一個車手到達終點的時候 都會在其它車手的屏幕上顯示 某某人以多少時間到達終點的提示 其實這就是一個典型的觀察者模式的應用 觀察者模式即是典型的雙向一對多的應用場景下用一的一端來通知多的一端
【 觀察者 模式解釋】
類型 行為模式
定義了一種一對多的依賴關系 讓多個觀察者對象同時監聽某一個主題對象 這個主題對象的狀態發生改變時 會通知所有的觀察者對象 使它們能夠自己更新自己
【 觀察者 模式UML圖】
【 觀察者 模式 JAVA代碼實現】
新建抽象發布通知父類
package carer_subject;import java util ArrayList;import java util List;import carer_observer carer_observer;public interface carer_subject_parent { public void set_state(String state_string); public String get_state(); public void add_observer(carer_observer carer_observer_ref); public void sub_observer(carer_observer carer_observer_ref); public void notityAllCarer();}
新建發布通知實現類
package carer_subject;import java util ArrayList;import java util List;import carer_observer carer_observer;public class carer_subject_sub implements carer_subject_parent { List<carer_observer> list_observer = new ArrayList<carer_observer>(); private String state; public void set_state(String state_string) { this state = state_string; } public String get_state() { return state; } public void add_observer(carer_observer carer_observer_ref) { list_observer add(carer_observer_ref); } public void sub_observer(carer_observer carer_observer_ref) { list_observer remove(carer_observer_ref); } public void notityAllCarer() { state = 到達終點 ; for (int i = ; i < list_observer size(); i++) { list_observer get(i) show_info(); } }}
新建觀察者接口
package carer_observer;import carer_subject carer_subject_parent;public interface carer_observer { public void show_info();}
新建觀察者實現類
package carer_observer;import carer_subject carer_subject_parent;public class carer_observer_
很赞哦!(5)
相关文章
- 02 youtube官網網頁版打開速度很慢是啥(App Store上有哪些冷門但逆天的 App?)
- 03 山東省皮膚醫院買粉絲(青島核酸檢測醫院有哪些)
- 03 山東青年政治學院國際金融與貿易(求最新的國際經濟與貿易專業的各大高校排名)
- 02 youtube官網網頁版打開鏈接在新頁面中打開(手機怎么進入pourhub官網?)
- 02 youtube官網網頁版打開速度顯示屏尺寸(響應式網站有什么優缺點?)
- 02 youtube官網網頁版打開網頁怎么關閉自動下載(聯想筆記本電腦ie瀏覽器打不開怎么辦)
- 03 山東鋼重國際貿易有限公司(中國十大鋼鐵集團)
- 02 youtube官網網頁版打開速度很慢只有(油猴有ppt的腳本么)
- 02 youtube官網網頁版打開速度測試軟件下載官網(為什么手機軟件會閃退?如何解決?)
- 02 youtube官網網頁版打開速度特別慢怎么優化(我用的是Hotspot Shield Launch1.57版本,想去YOUTUBE看視頻,顯示已連接,但就是不能打開任何網頁,急求)
热门文章
站长推荐
02 youtube官網網頁版打開網頁怎么關閉推薦項目(PS軟件各個版本區別大嗎?哪個版本最適合新手?)
02 youtube官網網頁版打開鏈接什么意思是開(PS軟件各個版本區別大嗎?哪個版本最適合新手?)
02 youtube官網網頁版打開鏈接在新標簽打開(如何搭建企業自媒體平臺)
02 youtube官網網頁版打開速度太慢如何解決(網絡推廣100種方法有哪些)
03 山東運鴻國際貿易有限公司(急!我是一名剛畢業的船員,哪位知情人給推薦下近年國內比較不錯的船舶公司,最好是有中日韓航線。謝謝了)
03 山東省平洲國際貿易有限公司(全國有哪些經營成品油倉儲的企業?)
02 youtube官網網頁版打開網頁源代碼怎么用(如何自學人工智能)
02 youtube官網網頁版打開速度特別慢上傳快(App Store上有哪些冷門但逆天的 App?)