1. 程式人生 > >設計模式----行為型模式之觀察者模式(Observer Pattern)

設計模式----行為型模式之觀察者模式(Observer Pattern)

/** * 天氣主題(可觀察者/目標) * @author mjs * @version 1.0.0 * @filename WeatherData.java * @time 2017-3-9 下午8:26:48 * @copyright(C) 2017 **********有限公司 */ package com.shing.design.observerpattern; import java.util.Observable; public class WeatherData extends Observable { private float temperature; //溫度 private
float humidity; //溼度 private float pressure; //氣壓 public float getTemperature() { return temperature; } public WeatherData() { // TODO Auto-generated constructor stub } /** * 改變狀態,通知觀察者(佈告板) */ public void measurementsChanged(){ setChanged(); notifyObservers(); }
/** * 當氣象臺檢測到變化是呼叫該方法 * @param temperature 溫度 * @param humidity 溼度 * @param pressure 大氣壓 */ public void setMeasurements(float temperature, float humidity, float pressure){ this.temperature = temperature; this.humidity = humidity; this.pressure = pressure; measurementsChanged(); }
public void setTemperature(float temperature) { this.temperature = temperature; } public float getHumidity() { return humidity; } public void setHumidity(float humidity) { this.humidity = humidity; } public float getPressure() { return pressure; } public void setPressure(float pressure) { this.pressure = pressure; } }