在Java中使用Observer理解MVC

时间:2012-09-28 22:08:50

标签: java model-view-controller observer-pattern

我从this example学习Java MVC。

如果查看Observer模型 Observable,为什么Observer.update方法会在第一个参数中接受Observable?如果View使用模型(依赖于它的一些方法),它将不可重用。不应该是View应该使用的唯一第二个参数吗?

1 个答案:

答案 0 :(得分:1)

  

为什么Observer.update方法在第一个参数中接受Observable?

observable启动更新调用,并在此调用中传递对自身的引用,以便观察者无疑知道是谁正在进行此调用。想象一下,如果观察者一次观察几个可观测量,会发生什么。这种类型的参数传递将有助于消除对此调用源的混淆。它与在Swing ChangeEvent对象或ActionEvent对象中传递对调用对象的引用几乎没有什么不同。