首页 > 其他 > 详细

观察者模式

时间:2019-08-04 01:35:14      阅读:131      评论:0      收藏:0      [点我收藏+]

  在现实生活中,股票价格与股民、气象局天气预报与听众、微信与微信用户,他们都是不能独立存在的,其中一个发生改变可能会导致一个或多个其他对象发生改变。解决这一类行为的一种实现方式可以使用“观察者模式”。观察者模式的描述,当对象存在一对多的依赖关系时,目标对象的状态发生变化时,应当所有依赖它的对象都得接收到通知自动更新;它是对象行为模式。观察者模式,通过观察目标对象,是否发生变化来决定自己的行为是否发生改变。

  优点:

    1、解耦,将观察者与目标抽象分离,减少依赖。

  缺点:

    2、当目标有过多的观察者,通知时间花费很多。

    2、观察者与目标之间有循环依赖,可能导致系统崩溃。

  这里拿一个进出口公司汇率的例子实现:

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

  在Java API 中专门有工具来做了这些事情 Observer、Observable

  看下面这个例子:

  技术分享图片

  技术分享图片

 

观察者模式

原文:https://www.cnblogs.com/liaobudao/p/11296645.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!