【发布时间】:2018-08-01 21:05:28
【问题描述】:
在我的 View 类中,我有多个自定义面板类(扩展 JPanel)作为嵌套类,它们在发生更改时相互通信。我想让这些面板分开类,每个类都在自己的文件中以提高可读性。但是那样这些面板就不能直接调用彼此的方法。我应该将每个面板引用到其他面板还是查看类?所有这一切似乎都不是一个好主意,而且一切都是紧密耦合的。解决这个问题的最佳解决方案或好的设计是什么?添加属性监听器或使用观察者模式是正确的方法吗?
【问题讨论】:
标签: java
在我的 View 类中,我有多个自定义面板类(扩展 JPanel)作为嵌套类,它们在发生更改时相互通信。我想让这些面板分开类,每个类都在自己的文件中以提高可读性。但是那样这些面板就不能直接调用彼此的方法。我应该将每个面板引用到其他面板还是查看类?所有这一切似乎都不是一个好主意,而且一切都是紧密耦合的。解决这个问题的最佳解决方案或好的设计是什么?添加属性监听器或使用观察者模式是正确的方法吗?
【问题讨论】:
标签: java
了解观察者模式。
简而言之,如果JPanel“A”在JPanel“B”中完成更改时必须刷新,那么
JPanel "B" 必须实现 Subject 接口
JPanel "A" 必须实现 Observer 接口
交互示例
如果这个解释对你有意义,请告诉我。
【讨论】: