java设计模式---观察者模式(Observer)

前言

在接下来的时间,每周都会给大家分享一个设计模式,欢迎大家关注、留言。

源码地址(欢迎star)

设计模式是什么?为什么要学习设计模式?

设计模式是程序员在设计应用程序或系统时可以用来解决常见问题的最佳做法。
设计模式可以通过提供经过验证的开发范例来加快开发过程。
重用设计模式有助于防止可能导致重大问题的微妙问题,并且还提高了熟悉模式的编码人员和架构师的代码可读性。

观察者模式含义

定义对象之间的一对多依赖关系,以便当一个对象状态改变时,它的所有依赖关系将被自动通知和更新。

代码结构

java设计模式---观察者模式(Observer)_第1张图片

以上是比较单一的实现方式,同时也提供了比较通用的实现,具体流程类似于Rxjava, 点我查看通用实现

使用场景

  1. 当抽象有两个方面,一个依赖另一个。将这些方面封装在单独的对象中可以让您独立地更改和重用它们。
  2. 当对一个对象的更改需要更改其他对象时,您不知道需要更改多少个对象
  3. 当对象应该能够通知其他对象而不对这些对象是谁进行假设。 换句话说,你不希望这些对象紧密耦合
  4. 典型案例Rxjava, 想深入了解,可以研读Rxjava的源码。

更多内容可以关注我的公众号或者搜索SamuelAndroid关注我:

java设计模式---观察者模式(Observer)_第2张图片
公众号

你可能感兴趣的:(java设计模式---观察者模式(Observer))