有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java实现MVC和Observer模式

对于学校的小组项目,我们必须制定一个实现MVC模式的程序

我遇到的困难是理解MVC模式是如何通过SWING在java中实现的,视图是否生成SWING组件

另一件我很难理解的事情是什么更新了什么。例如,一篇文章说视图“执行”控制器,然后控制器相应地更新模型,模型通知视图,然后视图从模型中提取数据

我对MVC模式的了解是,控制器有一个模型和视图的实例,因此它可以与两者交互。但是,如果我按下视图中的按钮,控制器如何知道如何处理模型?在这个例子中,哪些类别是观察者,哪些类别是可观察者

我的另一个想法是,如果我们使用如上所述的MVC模式,视图就是观察者,模型就是观察者,但这仍然留下了一个问题:控制器如何知道何时更新模型

如果它看起来含糊不清,请在评论中要求澄清,我会回答


共 (1) 个答案

  1. # 1 楼答案

    视图与控制器通信,控制器与模型通信,反之亦然

    假设您有一个模型类Graph,它包含图形的点。视图的目的是显示该图形。{}类将是控制器观察的{a1}。如果控制器观察到更改,它将相应地通知视图更新/更改。如果您按下视图上的按钮,例如显示不同的图形对象,则您的按钮有一个^{}请求控制器更改图形

    是的,视图类将创建Swing组件