Java Swing应用中控制器的生命周期

Java Swing应用中控制器的生命周期,java,swing,Java,Swing,我正在创建一个Swing应用程序,我已经创建了JPanels、JDialogs等的子类,并且为每个子类创建了自己的控制器 例如: UserRegistrationDialog has a UserRegistrationDialogController 我在另一个处理整个JFrame的控制器中使用了这个用户注册控制器的一个实例。用户注册对话框控制器在用户单击JFrame中的按钮时显示该对话框 我的问题是:我是否应该在用户每次单击按钮时创建一个新的控制器对象?或者我应该在主控制器启动时创建控制器

我正在创建一个Swing应用程序,我已经创建了JPanels、JDialogs等的子类,并且为每个子类创建了自己的控制器

例如:

UserRegistrationDialog has a UserRegistrationDialogController
我在另一个处理整个JFrame的控制器中使用了这个用户注册控制器的一个实例。用户注册对话框控制器在用户单击JFrame中的按钮时显示该对话框


我的问题是:我是否应该在用户每次单击按钮时创建一个新的控制器对象?或者我应该在主控制器启动时创建控制器,然后在其上调用显示对话框的showDialog方法等?JDialog视图实例应该每次创建还是由控制器保留?因此,问题与分包商和视图的生命周期/范围有关。

我的建议是创建控制器的单个对象,以便在整个应用程序生命周期中可以使用控制器的单个对象。

我只创建一个在整个应用程序生命周期内有效的实例,包括控制器和视图?或者在每次单击时为控制器重新实例化一个新视图?我的问题只是关于逻辑a)如果只使用一次,为什么要创建两次新注册,b)或/和为什么要重新创建任何指定为常规使用的输入表单