观察者模式在基于Swing的应用程序中非常常用。任何人都可以给出一个可用于非Swing,pojo应用程序的此模式的实际示例吗?非Swing应用程序中的观察者模式
回答
观察者模式有很多应用程序,很多都不涉及GUI。例如,考虑您正在编写股票市场应用程序。您想知道股票价格何时发生变化。
而不是查询每只股票的价格,请将您的观察员注册到中央股票经纪商,然后让他在每次价格变动时通知您。
这些例子无数。无论何时您想拥有关于系统的状态或其他信息,而不是每隔几秒轮询一次,请注册一个观察者并让他通知您,而不是每隔几秒钟通知您
在Java库中,几乎所有接口形式为Listener(包括AWT listeners ,但也有其他)指向观察者模式的使用。在java.util.Observable/Observer中还有一个基本实现,另一个在java.beans.PropertyChangeSupport
+1 [EventListenerList](http://download.oracle.com/javase/6/docs/api/javax/swing/event/EventListenerList.html)也是一个很好的模型。 – trashgod
监听器模式在JVM本身中使用了很多。
例如在Java Management Extensions (JMX)中,您可以注册异步侦听器(名为notifications),只要满足某些条件(如低内存),JVM就会发出异步侦听器。
我也可以想到Wicket框架,但它实际上受到GUI构建概念中的Swing的强烈影响。
我使用观察者模式(与单例相结合)来反映应用程序中的数据库更改。
每个数据库更新都是通过其他2个组件注册的单例观察器发生的。在我的情况下,这是一个词汇学习应用程序,因此,当输入新单词时,测试的组件负责人将被通知更改并准备好更新测试。 另一个组件,更新您不关心的GUI。尽管最后的测试与GUI相关。
- 1. Java Swing GUI冻结 - 观察者模式
- 2. Java Swing和观察者模式
- 3. 观察者模式Java - 使用线程的多个观察者
- 4. 观察者模式 - 观察者创建
- 5. 观察者模式
- 6. 带观察者模式的Java Swing多线程管理
- 7. NSNotificationCenter - 观察者模式:好的,但在移动应用程序?
- 8. 如何“戳”遵守观察者模式的Android应用程序?
- 9. 使用serializeArray和观察者模式列表应用程序
- 10. 线程和Java中观察者模式
- 11. 观察者设计模式在休息应用程序
- 12. 观察者模式-受试者保持到由观察者
- 13. 异步观察者模式
- 14. 实现观察者模式
- 15. 了解观察者模式
- 16. 观察者模式imp
- 17. asp.net观察者模式
- 18. jQuery和观察者模式
- 19. 观察者模式混淆
- 20. MVC和观察者模式
- 21. 与观察者模式
- 22. 观察者模式建议
- 23. 观察者模式类(JAVA)
- 24. Vue.js和观察者模式
- 25. SI +观察者模式
- 26. 观察者模式vs MVC
- 27. python观察者模式
- 28. 具有两个观察者列表的观察者模式
- 29. 如何应用观察者模式如果观察者也是主体
- 30. 使用weak_ptr的观察者模式
我需要一个或两个具体的例子。你能否详细说明一下股票市场的例子? – Partha