第03课:观察者模式

本文详细介绍了观察者模式,包括发布-订阅的概念、Java中的实现以及观察者模式在View-Model中的应用。文章通过实例代码展示了如何创建观察者和被观察者,并讨论了模式的优缺点。
摘要由CSDN通过智能技术生成

观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。

发布—订阅

在首篇导读中介绍了设计模式的分类,而观察者模式属于行为型模式,行为型模式关注的是对象之间的通讯,观察者模式就是观察者和被观察者之间的通讯。

观察者模式有一个别名叫“订阅—发布模式”。报纸大家都订过吧,当你订阅了一份报纸,每天都会有一份最新的报纸送到你手上,有多少人订阅报纸,报社就会发多少份报纸,这是典型的订阅—发布模式,报社和订报纸的客户就是上面文章开头所说的“一对多”的依赖关系。

观察者模式类图:

enter image description here

其实观察者模式也很简单,从上图可以看出观察者模式就两种角色,一是观察者,二是被观察者(主题),也可以认为是订阅者和发布者。

从逻辑上来说,观察者模式就是:当观察者的状态改变了,就通知观察者,怎么通知呢?从类图中可以看到࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值