java – 为什么JVM在变量超出范围后不会销毁JFrame对象?
发布时间:2020-12-15 04:58:36 所属栏目:Java 来源:网络整理
导读:我正处于学习 Java的初级阶段. 在我读过的所有文档中,它都提到Java使用安全引用来访问对象而不是内存指针. 而且当方法返回时,其本地范围的变量符合垃圾收集的条件. 那么为什么在下面的代码中,在createFrame方法返回后,JFrame对象不会随窗口一起被销毁? impo
我正处于学习
Java的初级阶段.
在我读过的所有文档中,它都提到Java使用安全引用来访问对象而不是内存指针. 而且当方法返回时,其本地范围的变量符合垃圾收集的条件. 那么为什么在下面的代码中,在createFrame方法返回后,JFrame对象不会随窗口一起被销毁? import javax.swing.*; public class HelloJava { public static void main( String[] args ) { createFrame(); } private static void createFrame() { JFrame frame = new JFrame( "Hello,Java!" ); JLabel label = new JLabel( "Hello,Java!",JLabel.CENTER ); frame.getContentPane().add( label ); frame.setSize( 300,300 ); frame.setVisible( true ); } } 不仅窗口是可见的,我可以在该窗口上执行所有操作,如拖动,最大化,最小化等. 解决方法
因为EDT现在正在运行.
有关详细信息,请参阅Concurrency in Swing&尤其: > Initial Threads.
> The Event Dispatch Thread.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Mybatis返回int或者Integer类型报错的解决办法
- Get the image file(s) some informations,Including the M
- Java基于外观模式实现美食天下食谱功能实例详解
- java – 如何确定Hibernate会话正在使用的DataSource?
- java – Maven eclipse不添加依赖关系
- 使用ant提供的zip进行压缩和解压缩,支持中文
- java – JTextArea中的行间距
- java – JButton扩展以占用整个框架/容器
- java – Akka如何实现JMM的发生之前的关系?
- java-将检索到的float值从外部文件转换为float数组,以便与该