java设计模式——观察者模式

观察者模式又叫做发布-订阅模式,其实本人是更加喜欢发布-订阅模式的,因为观察者模式听起来实在是让人无法理解。接下来,我们还是说发布-订阅模式吧,为什么这么说呢,因为这里存在两种对象发布者和订阅者,这种模式的特点是,发布者是一对多的,而订阅者和发布者之间是一对一的(一个用户只能订阅一次电台,不能重复订阅)。接下来我准备用一个收听电台的形式来讲这种设计模式,因为最近我也有听电台,而且准备投简历到一个做电台的公司。加油!

假设我们有很多的用户,这些用户就是我们的Observer了

定义发布者,发布者需要和订阅者进行关联,当有信息需要发布的时候,遍历订阅者名单,然后调用每个订阅者的回调方法。

我们可以直接在电台添加我们的听众,但是很明显这样不符合我们的正常逻辑,应该由我们的听众主动订阅电台,一个用户可以订阅多个电台

很显然,每次我们的电台发送信息,我们就听众都会收到信息,并且做出相应处理。

输出结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容