观察者设计模式

按照我的理解,观察者设计模式,最简单好理解的例子就是气象台和观察站,大部分是1对多的关系,一旦气象台的数据进行改变,那么就会通知观察站自己的数据已经发生了改变,也可以理解为货仓,其他小商家进行进货,当仓库有货就会通知所有的小商家来进行购买
这里我们用气象台和观察站的例子
在这里插入图片描述
先上其uml图,因为我们是1对多进行操作,所以我们把观察者对象存入一个arraylist集合中,把集合聚合在我们的气象站中,接口提供三个抽象的方法,注册观察者,删除观察者,以及通知观察者,当我们的气候进行改变,就通过我们的气象站中的通知方法,遍历其所有的观察者,把我们更新的数据存入观察者中.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这些代码有些细节还可以进行封装成方法,进一步抽象,以及抽象类为了看的方便,就直接在抽象类里面实现了方法,我们如果需要扩展也很方便,只需要继承即可,但是实际开发操作尽量不在抽象类中全部实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值