2012-04-05 88 views
2

GUI元素当你创建一个GUI元素,例如像这样使用Java创建

new JFrame(); // nothing pointing to it. 

一个JFrame这是错的,因为没有什么指向它,所以它会被垃圾收集。我意识到这是有效的,但我想确保它始终有效,即使垃圾收集器运行。

+0

JFrame错过方法finalize(),那么永远不会被GC'ed – mKorbel 2012-04-05 05:19:46

回答

2

您不需要保存引用JFrame对象的引用变量(除非您稍后要使用它)。所有你需要的是调用构造函数JFrame(),窗口将被构造。因此,在任何情况下,它都应该没有任何问题。

+0

它是否创建一个内部引用的地方? – rubixibuc 2012-04-05 03:18:48

+0

你能提供更多信息吗?收集器为什么不抓住它?从我的理解中,当前执行堆栈中缺少引用指针的任何东西都将丢失。 – RyanS 2012-04-05 03:21:51

+0

有关更多信息,请参阅此[post](http://stackoverflow.com/a/9838877/597657)。 – 2012-04-05 03:27:48