ski*_*ppy 2 java oop model-view-controller
我有三个类以有趣的方式进行交互.一个是模型类,它必须由其他两个类访问,因此它的单个实例作为每个类的成员保存.这两个类都以不同的方式与模型交互.
有几个实例必须完全抛弃模型对象并用新实例替换,这使事情复杂化.并且这些场合出现在两个观看/控制类中.因此,这些类中的任何一个必须能够向另一个发送信号,说"我们需要协调并促进用新的Model对象替换我们的Model对象".现在我在B类中有代码告诉A类构造一个新模型并将其发送回来,但现在我需要处理相反的情况,其中事件在A类中出现,不幸的是A类没有引用B级,可能不应该.
处理这个问题的好方法是什么?
更新:对不起,伙计们,这不能是单身人士.单身人士是你需要保证只有一件东西的时候.这与我上面提到的任何要求无关.这个类不是单身,不应该是.
更新:到目前为止,实际上只有一个这个Model类的实例,但我有一个模糊的怀疑我需要允许更多,我不想通过使用Singleton设计模式来限制自己我所拥有的不同关注点.事实证明我是对的:昨天我收到了新的要求,现在我需要支持任意数量的这些.:)当你不需要时,不要限制自己,不要在不打算的情况下滥用设计模式!
您将需要一个中间模型层,两个类中的每一个引用的模型"持有者"对象.ModelHolder保存对模型的引用.
此ModelHolder还应支持侦听器,因此当抛出其模型时,它可以通知任何侦听器模型已更改.
| 归档时间: |
|
| 查看次数: |
199 次 |
| 最近记录: |