次のコードが JDialog インスタンスのガベージ コレクションを行わないのはなぜですか? インスタンス X には参照がなく、ダイアログは破棄されました。
public class Test {
public static void main(String[] args) throws Throwable {
test();
Runtime.getRuntime().gc();
}
public static void test() throws Throwable {
X x = new X();
x.setVisible(true);
x.dispose();
}
public static class X extends JDialog {
public X() {
super();
}
@Override
protected void finalize() throws Throwable {
System.out.println("destroyed !");
super.finalize();
}
}
}
ありがとうございました