在对话框上使用 setVisible(false) 并在以后重用它是否有意义,或者每次调用 dispose() 并创建一个新的 JDialog 更安全。 使用 setVisible(false) 会导致内存泄漏怎么办?
编辑: 我的问题与退出应用程序无关。更多关于以主框架为父级并在应用程序生命周期内打开和关闭的对话框。例如。假设我的应用程序有大约 10 个对话框,每次打开它们时都会显示不同的数据。我应该重用实例并使用 setVisible() 还是应该每次都创建一个新 Dialog 并在关闭时 dispose() 它们。
最佳答案
我建议使用 dispose()
释放资源并释放内存。如果要再次显示对话框,只需调用 setVisible(true)
。
请务必注意,当 Java 虚拟机 (VM) 中的最后一个可显示窗口被处理掉时,VM 可能会终止。见 AWT Threading Issues了解更多信息。
关于java - JDialog setVisible(false) vs dispose(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7256606/