美文网首页
Java 中的 GoF 设计模式之观察者模式

Java 中的 GoF 设计模式之观察者模式

作者: 心随漫步 | 来源:发表于2017-02-22 19:58 被阅读0次

观察者模式

观察者模式,顾名思义,它的使用场景是,当某个位置(Subject,主题)的状态发生变化时,其它多个点(Observers,观察者)需要随之更新。每个 Observer 都必须分别注册到这个 Subject。Subject 也会提供一些方法注销观察者。已注册的观察者会在主题状态发生变化的时候收到由“通知”方法发出的通知。通常是这样。

这里我们提出一个示例,StockBroker 应用,它涉及维护各种类型的金融信息。Subject 是应用程序中的接口,它为 Observred 类提供样板。StockData 是 Subject 的一个具体实现,它实现了 addObserver()、removeObserver() 和 otifyObservers()。另外,它还维护着一个已注册观察者的列表。IncomeHandler, InvestmentHandler 和 PortfolioHandler 包含各种观察者,分别用于维护指定 StockBroker 的收入、投资和证券。

所有这些都取决于不断波动的股票价值。它们特别关心每支股票的 stockSymbol、stockValue 和 stockUnits。每个观察者都实现 Observer 接口,这个接口约定了 update() 方法,由每个具体的类实现。

使用 StockBroker.java 来运行应用程序。你可以试着在应用中加入自己的 Observer,这样你可以尝试从 Web 服务中获得这些值并据此写一个自己的观察者。

相关文章

  • 观察者设计模式

    每周学点Java设计模式__观察者设计模式 本次继续更新java23中设计模式之一——观察者模式。 观察者模式(有...

  • Android中涉及的模式

    我的Java设计模式-建造者模式 我的Java设计模式-观察者模式 重学设计模式之单例模式

  • Java 中的 GoF 设计模式之观察者模式

    观察者模式 观察者模式,顾名思义,它的使用场景是,当某个位置(Subject,主题)的状态发生变化时,其它多个点(...

  • 设计模式之工厂模式

    title: 设计模式之工厂模式date: 2020-11-26 22:37:00tags: java GOF 设...

  • 设计模式之单例模式

    title: 设计模式之单例模式date: 2020-11-28 00:12:03tags: java GOF 设...

  • 事件模式与观察者模式

    GOF设计模式中有一种叫做观察者模式(Observer),属于行为型模式。又叫发布-订阅(Publish/Subs...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

网友评论

      本文标题:Java 中的 GoF 设计模式之观察者模式

      本文链接:https://www.haomeiwen.com/subject/bcrmwttx.html