java - Swing 和观察者模式

标签 java swing design-patterns

我在大学时有一个任务,就是使用观察者模式来申请通过科目(编程基础)。我想展示更多的知识,它包含在教学大纲中,但这对我来说适得其反。我用 Swing + sql 制作了一个应用程序,严重依赖 ActionListeners,我认为这是观察者模式的一个重要示例。不幸的是,我的项目被拒绝了,因为我没有编写自己的观察者模式实现。

我的问题是,用 Swing 是否可以替换默认的操作监听器?我什至无法检查其外部按钮的状态。尽管我知道模式的原理并寻求您的帮助,但我现在真的很困惑。

最佳答案

实现 observer pattern 的三种常见方法在 Swing 中有描述 here 。最简单的模拟是 Observer ,单一方法接口(interface),以及 Observable ,一个包含(实际上) List<Observer> 的类。调用notifyObservers()遍历List ,调用update()每个的方法Observer在列表中。

关于java - Swing 和观察者模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28151996/

相关文章:

java - 在 Java 中比较两个 JSON 时忽略数组中的特定节点

java - 从 JTable 动态添加/删除行

asp.net - 什么时候应该使用工厂模式?

oop - Java 核心库中的 GoF 设计模式示例

java - CachedRowSet、ResultSetDynaClass 还是其他集合?

java - 尝试使用 SimpleDateFormat 类通过 android kotlin 格式化 Unix 日期模式 (%Y-%m-%d),但没有结果

java - LinkedList(从头开始构建)add()不起作用

java - AbstractListModel 有 getSelectedIndex() 方法吗?

java - for 循环中的输入对话不起作用?

oop - 复合设计模式中的操作与在访问者设计模式中添加新访问者