观察者模式中有一个气象观测站的例子,此系统中的三个部分是气象站(获取实际气象数据的物理装置),WeatherData对象(追踪来自气象站的数据,并更新)和布告板(显示气象状况给用户看)。
WeatherData对象就是一个主题,获取更新的数据,通知并更新它下面的三个布告板。我要做的就是建议一个应用,利用WeatherData对象获取数据,并更新三个布告板。
WeatherData有getter方法,用来获取三个测量值:温度,适度,气压。getTemperature(),getHumidity(),getPressuer()。当有新的数据是,就会调用measurementsChanged()更新布告板数据。