根據headfirst做出實現如下
主題,觀察者,顯示三個介面。
public inte***ce observer
public inte***ce subject
public inte***ce displayelement
氣象資料實現主題介面
public class weather implements subject
@override
public void registerobserver(observer o)
@override
public void removeobserver(observer o)
@override
public void notifyobserver()
} public void measurementchanged()
public void setmeasurement(float temp, float humidity, float pressure)
}
有了氣象之後,顯示到佈告板,實現了觀察者以及顯示 介面
public class currentconditiondisplay implements observer, displayelement
@override
public void display()
@override
public void update(float temp, float humidity, float pressure)
}
最後測試
public class weatherstation
}
結果顯示為
current conditions :80.0f degrees and65.0%humidity
current conditions :82.0f degrees and63.0%humidity
current conditions :82.0f degrees and67.0%humidity
java觀察者模式
簡單地說,觀察者模式定義了乙個一對多的依賴關係,讓乙個或多個觀察者物件監察乙個主題物件。這樣乙個主題物件在狀態上的變化能夠通知所有的依賴於此物件的那些觀察者物件,使這些觀察者物件能夠自動更新。不多說了,直接給出實現 例1 對某個事件只有乙個訂閱者的例子 author yongxing.shao pu...
JAVA 觀察者模式
實現觀察者模式涉及到乙個類和乙個介面 observable類和observer介面 被觀察的類需要繼承observable類,在該類中的常用方法有 public voidaddobserver observer o 增加乙個觀察者觀察自己 public voiddeleteobserver obse...
java 觀察者模式
觀察者模式顧名思義就是觀察乙個物件的變化並且做相應的動作。舉個例子 乙個學生可以有學習,睡覺的動作,但是如果在他做這些事情之前他媽媽提醒他下面該作甚麼。一旦他學習,就提醒他要先預習課程,一旦他睡覺就提醒他要先洗腳。我們來先定義乙個學生實體 public class student public st...