【发布时间】:2017-08-02 12:07:38
【问题描述】:
我一直在研究 head_first_design_Patterns 书中的观察者模式。场景是这样的“有一个名为 observers 的 ArrayList 并且它有所有正在实现 Observer 接口的观察者。 在书中,他们使用循环来更新所有观察者。循环是:
for(int i=0; observers.size();i++)
{
Observer observer= (Observer) observers.get(i);
observer.update(temperature,humidity,pressure);
}
我想知道循环的第一条语句是如何工作的。我们是否在这里创建对特定观察者的引用?
【问题讨论】:
-
是的,您正在获得对
observers.get(i)返回的对象的引用。您正在将此对象强制转换为(Observer),然后您可以使用局部变量observer对其进行操作。 -
@Ravi:我认为这个问题与您链接的问题没有任何关系。
-
@uvesten 我只是指出这个问题首先要看看那个问题。因为,该问题提到了与此设计模式相关的代码
标签: java observer-pattern