关闭Java应用程序并启动另一个应用程序

时间:2016-04-22 14:23:54

标签: java swing

我正在寻找这类问题的不同答案,但他们并没有达到我的规格。我有一个app1.java类。它具有public static void main函数,其中有JOptionPane.showConfirmDialog个对象。在单击yes时,我想运行另一个名为" app2.java"的java文件。并关闭当前运行的applocation(即app1.java)。 我试过这段代码:

int response = JOptionPane.showConfirmDialog(null, "Do you want to restart?", "Restart Game?",
                JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
            if (response == JOptionPane.NO_OPTION) {
              System.exit(0);
                } 
            else if (response == JOptionPane.YES_OPTION) {
              new app2();
                } 
            else if (response == JOptionPane.CLOSED_OPTION) {
              System.exit(0);
                }

问题在于,单击是时,会打开一个新窗口,但前一个窗口不会关闭。我无法尝试System.exit,因为它关闭了两个窗口。该怎么办?

2 个答案:

答案 0 :(得分:2)

如果您使用JFrame,则可以使用dispose()方法关闭当前应用程序并使其可用于垃圾回收。

jframeObj.dispose();
new app2();

答案 1 :(得分:0)

关闭框架,但不是整个应用程序:

Jframe jframe = new JFrame();
jframe.dispose();
new app2();
相关问题