2020久久超碰欧美精品最新亚洲欧美日韩久久精品,国产福利电影一区二区三区,亚洲欧美日韩一区在线观看,亚洲国产欧美日韩欧美特级,亚洲欧美日韩成人一区久久,欧美日韩精品一区二区三区不卡,国产欧美日韩va另类影音先锋,亚洲欧美日韩久久精品,亚洲欧美日韩国产成人精品影院,亚洲国产欧美日韩精品一区二区三区,欧美日韩国产成人高清视频,日韩久久精品国产免费观看频道,久久人人爽人人爽从片av高清,国产精品综合一区二区

首頁技術文章正文

Java-觀察者模式

更新時間:2019-01-10 來源:黑馬程序員 瀏覽量:

  觀察者模式(有時又被稱為模型(Model)-視圖(View)模式、源-收聽者(Listener)模式或從屬者模式)是軟件設計模式的一種。在此種模式中,一個目標物件管理所有相依于它的觀察者物件,并且在它本身的狀態改變時主動發出通知。這通常透過呼叫各觀察者所提供的方法來實現。此種模式通常被用來實現事件處理系統。

  1. 觀察者模式 :分為兩種類型,一種為推模式,一種為拉模式。

  2. 這兩種模式的區別為:推模式觀察者獲取到的數據為部分數據即在目標對象中定義的數據

  3. 拉模式下 可以獲得到最大的數據集。

  觀察者模式 可以說是 發布訂閱模式 即一個目標對象對應多個觀察者。當目標對象發生改變后對應的觀察者也要做出改變。

  目標對象 提供對觀察者的管理

  · 抽象被觀察者角色:也就是一個抽象主題,它把所有對觀察者對象的引用保存在一個集合中,每個主題都可以有任意數量的觀察者。抽象主題提供一個接口,可以增加和刪除觀察者角色。一般用一個抽象類和接口來實現。

  · 抽象觀察者角色:為所有的具體觀察者定義一個接口,在得到主題通知時更新自己。

  · 具體被觀察者角色:也就是一個具體的主題,在集體主題的內部狀態改變時,所有登記過的觀察者發出通知。

  · 具體觀察者角色:實現抽象觀察者角色所需要的更新接口,一邊使本身的狀態與制圖的狀態相協調

  觀察者模式可以進行變換,做到有條件的通知。

  改觀察者接口 提供 參數 用來進行判斷是否滿足條件 用于推送



作者:黑馬程序員JavaEE培訓學院
首發:http://java.itheima.com/

分享到:
在線咨詢 我要報名
和我們在線交談!