java - 销毁当前类对象并通过线程运行同一个类

标签 java multithreading swing

我正在调用一个线程,在该线程中我再次调用同一个类

TrafficMainGUI traffic=new TrafficMainGUI(storeValue);
traffic.setVisible(true);

但我希望前一个类对象被销毁。我怎样才能实现这一点。

由于 TrafficMainGUI 是一个 jFrame 对象。请帮忙??

最佳答案

要正确销毁 JFrame,您应该 dispose它。

previousTraffic.dispose();
TrafficMainGUI traffic=new TrafficMainGUI(storeValue);
traffic.setVisible(true);

来自文档:

释放此窗口、其子组件及其所有子组件使用的所有 native 屏幕资源。也就是说,这些组件的资源将被销毁,它们消耗的任何内存都将返回给操作系统,并且它们将被标记为不可显示。

您的问题对于您正在使用线程做什么非常模糊。 正如 @MadProgrammer 所提到的,当您使用 swing 时,您应该考虑 EDT 。但要获得更具体的帮助,您应该提供 sscce .

关于java - 销毁当前类对象并通过线程运行同一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15472616/

相关文章:

c - 解释它是如何工作的

java - 从列表中多选

java - 从 URI 或原始文件路径 [getExternalFilesDir(String type) vs getFilesDir()] 重新创建文件时,文件长度为 0

java - JAXB 从 XML 检索单个元素

c# - Metro 风格应用程序中的任务

java - 导入 3D 模型并将其显示在 swing 组件中

具有三个组件的 Java GUI Swing Jlist

java - 为什么 Java 中的 addLast() 替换了我的链表?

java - 如何在 onCreate 方法之外初始化 CastContext

C++ 线程错误 : no type named type