老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網站建設、域名注冊、服務器等服務

設計模式之觀察者模式-Java內置觀察者及總結

設計模式之觀察者模式-Java內置觀察者及總結

創(chuàng)新互聯(lián)是一家專業(yè)的成都網站建設公司,我們專注成都網站設計、成都做網站、網絡營銷、企業(yè)網站建設,友情鏈接廣告投放平臺為企業(yè)客戶提供一站式建站解決方案,能帶給客戶新的互聯(lián)網理念。從網站結構的規(guī)劃UI設計到用戶體驗提高,創(chuàng)新互聯(lián)力求做到盡善盡美。

觀察者下篇

在上一篇文章中,我們通過污污彈公司司小司做氣象站項目學習了觀察者模式怎么使用。在本篇中,我們對觀察者模式進行總結及關鍵點,還有一個就是Java中內置的觀察者模式。

本文出處:凱哥Java(kagejava)

一:Java內置的觀察者

我們將使用Java內置的觀察者將氣象站項目重新寫一次。

內置觀察者的區(qū)別:

Subject對象:

1:subject名稱變了,變成了Observable了;功能不變,還是注冊、移除、通知觀察者三個功能;

2:observable是對象而非接口了,所以在使用的時候,不能在使用實現(xiàn)了,需要使用繼承關系。好處就是:因為是繼承關系,所以在注冊觀察者、移除觀察者、通知觀察者這三個方法具體實現(xiàn)我們可以不用寫了。

Observer對象:

observer對象名字沒有變化,功能還是update,沒有變化。?而且還是接口對象。

那么為什么observer不用類而用接口呢?因為我們知道,我們的observer是不同的項目,需求不一定的。所以,只能使用接口來定義了。具體實現(xiàn),各個項目根據(jù)自己項目功能自行實現(xiàn)即可。

不同:update時候,可以選擇將信息主動推送給觀察者還是讓觀察者自己來拉去。在Java內置的觀察者模式中,推/拉都可以。

使用Java內置觀察者實現(xiàn)的代碼:

項目結構:

設計模式之觀察者模式-Java內置觀察者及總結

測試類:JavaObserverWeatherMainTest

需要說明的:

public class?CurrentConditionJava?implements?Observer {}

實現(xiàn)的Observer對象所在位置:import?java.util.Observer;

public class?WeaterDataJava?extends?Observable {}

繼承的Observerable對象所在位置:import?java.util.Observable;

運行結果:

設計模式之觀察者模式-Java內置觀察者及總結

達到我們預期的效果。說明,使用Java內置的觀察者模式成功!

使用Java內置的觀察者需要唯一注意的地方:observerable的繼承者在datachange時候,需要先setChanged()。如下圖:

設計模式之觀察者模式-Java內置觀察者及總結

這一點一定要注意。

二:觀察者模式總結及關鍵點

百科上對觀察者模式基本介紹:

設計模式之觀察者模式-Java內置觀察者及總結

實現(xiàn)方式:

設計模式之觀察者模式-Java內置觀察者及總結

觀察者模式使用場景:

設計模式之觀察者模式-Java內置觀察者及總結

觀察者模式四個角色:

設計模式之觀察者模式-Java內置觀察者及總結

抽象主題角色(subject)、主題角色具體實現(xiàn)類

抽象觀察者角色(observer)、觀察者具體實現(xiàn)類

觀察者模式的優(yōu)缺點:

設計模式之觀察者模式-Java內置觀察者及總結

觀察者模式執(zhí)行過程

設計模式之觀察者模式-Java內置觀察者及總結

從觀察者模式中體會,松耦合、高內聚、隔離影響的意義:

松耦合:類與類之間不要太依賴,沒有順序。依賴類不用關系被依賴類的內部是怎么實現(xiàn)的。

對應天氣站項目:實現(xiàn)了subject接口的天氣對象不需要關系具體的公告板內部怎么實現(xiàn)的,需要做哪些。subject子類之關心公告板是否實現(xiàn)了observer接口類即可。

聯(lián)系凱哥:

公眾號:凱哥Java(kaigejava)

凱哥個人博客:www.kaigejava.com

留個言,加個好友,一起學習

就算實現(xiàn)了observer的公告板對象項目死掉了,subject對象依然可以正常運行。反之,就算subject項目死掉了,依然不會影響observer項目的運行。無非就是公告板不能公布最新數(shù)據(jù)而已。這就很好的體現(xiàn)了松耦合的好處。

高內聚:對象內部是高內聚的。這樣便于調試、擴展等。


新聞標題:設計模式之觀察者模式-Java內置觀察者及總結
標題來源:http://www.xueling.net.cn/article/jseogp.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 99精品久久精品一区二区 | 无码av中文字幕免费放 | 美女极度色诱图片www | av大片在线无码免费 | 少妇伦子伦精品无码 | 国产综合欧美 | xxx黄色片| 国产精品高清乱码在线观看 | 熟妇熟女乱妇乱女网站 | 免费黄色a级毛片 | 噜噜噜老湿私人影院 | 精品无码无人网站免费视频 | 永久黄网站色视频免费看 | 国产亚洲美女精品久久久2020 | 欧美激情精品久久久久久大尺度 | 精品一区二区三区日本 | 中文日韩一区二区 | 久久久久国产综合AV天堂 | 亚洲国产精品VA在线观看香蕉 | 亚洲一卡一卡二新区无人区 | 性生活久久久 | 青楼妓女禁脔道具调教SM | 久久99久久久 | 少妇SPA推油被扣高潮在线观看 | 少妇大战黑吊在线观看 | 国产欧美一区二区三区视频 | 日本一级吃奶淫片免费 | 三级久久久久久久久高潮 | 亚洲ΑV在线观看天堂无码 国产97成人亚洲综合在线观看 | 国产一级淫片在线观看 | 色综合激情无码中文字幕 | 妇女bbbb插插插视频 | 在线观看国产黄 | 99久久国产综合精品女乱人伦 | 日韩欧美中文字幕一区二区 | 大地资源高清在线观看剧情 | 亚洲VA中文字幕无码毛片 | 色欲午夜无码久久久久久 | 日韩av怡红院 | 无码国产69精品久久久孕妇 | 噗嗤噗嗤高清在线视频www |