作业帮 > 综合 > 作业

java,观察者模式定义3个观察者,发生更新能不能只更新其中一个观察者.

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/28 09:43:27
java,观察者模式定义3个观察者,发生更新能不能只更新其中一个观察者.
简单的说,3个观察者属于不同的listener,那么特定的事件会通知特定的观察者
这里用listener而不用observer是因为,observer就是实现update方法,而listener有自己的实现方法
同样的,被观察者如果对应的是observer的话,那么它只有一个observer列表,但是如果对应的是listener的话,不仅有listener列表还有event列表.
就跟pub/sub一样,pub一个主题,只有订阅了这个主题的人才会收到
再问: 谢谢,你的建议不错,可是你没有回答我的问题。
再答: 是不是我说的有些晦涩 简单来说, 你被监听的对象里维护3个列表, 3个观察者属于三不同的列表, 这样你就可以知道去通知谁了, 3个列表就好比三个主题 在明确点说, 你自己写一个类, 然后类里有3个被观察的对象, 你的3个观察者实际上是观察3个不同的对象, 然后你操作你写的那个类去判断是调用哪个被观察者的notify JAVA api中提供的observer和observable只能维护一个列表, 也就是说只用那个不能打到你的要求, 但你可以封装一下, 不是吗