您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
03 java實現發布訂閱模式(誰能介紹一下JAVA平臺開發中最長用的幾種設計模式~最好是通俗一些的并且有實例的~500分酬謝)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-21 08:46:06【】7人已围观
简介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
設計模式-快餐簡解-【觀察者模式】
【 觀察者模式應用場景舉例 】
比如在玩 極品飛車 這款游戲 每一個車手到達終點的時候 都會在其它車手的屏幕上顯示 某某人以多少時間到達終點的提示 其實這就是一個典型的觀察者模式的應用 觀察者模式即是典型的雙向一對多的應用場景下用一的一端來通知多的一端
【 觀察者 模式解釋】
類型 行為模式
定義了一種一對多的依賴關系 讓多個觀察者對象同時監聽某一個主題對象 這個主題對象的狀態發生改變時 會通知所有的觀察者對象 使它們能夠自己更新自己
【 觀察者 模式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_imple implements carer_observer { private carer_subject_parent carer_subject_parent_ref; public carer_subject_parent getCarer_subject_parent_ref() { return carer_subject_parent_ref; } public void setCarer_subject_parent_ref( carer_subject_parent carer_subject_parent_ref) { this carer_subject_parent_ref = carer_subject_parent_ref; } public carer_observer
很赞哦!(95756)
相关文章
- 02 長沙網紅燒烤店名字(網紅燒烤店名字大全)
- 02 長沙預約hpv疫苗買粉絲(廣州HPV疫苗怎么預約)
- 02 長沙中國非洲國際貿易博覽會(中非經貿博覽會2023年長沙展會時間)
- 02 長沙網紅經濟發展現狀分析與(從“網紅”到“頂流”,長沙“夜經濟”是如何閃耀全國的?)
- 01 youtube官網中文版更新了幾千年表情(一月新番)
- 02 長沙網紅打卡點行程安排查詢(2021長沙網紅拍照打卡圣地推薦)
- 01 youtube官網中文版更新了哪些友商城官網(蘋果發布的國行版HomePod,值得入手嗎?)
- 02 長沙外貿經濟學院是專科嗎(我是才讀中專出來,想進大專院校,長沙哪所大專學校可以收呢?)
- 02 長沙市一醫院買粉絲(長沙醫保卡怎么登錄)
- 02 長沙金源偉業貿易有限公司(湖南化工企業名錄)