3

好的,所以我正在创建这个程序,当您单击重置按钮时,它会关闭程序并从启动时打开一个新的相同程序但是,我无法理解如何做到这一点:/这是我的按钮代码..该代码基本上退出了第一个程序,但不会在新应用程序中再次打开它。

 button1.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {


                        System.exit(0);
                        new Tests();
                    }

                });
4

2 回答 2

4

该代码基本上退出了第一个程序,但不会在新应用程序中再次打开它。

System.exit(0);终止当前的 JVM 进程。之后的所有指令都不会执行。

如果要重新启动应用程序,则应执行启动应用程序 JVM 的命令。如果是罐子:java -jar yourJar -cp yourClasspathProcessBuilder您可以通过实例来实现它。

另一种方法不是重新启动应用程序,而是将应用程序的状态设置为其初始状态。

于 2017-04-17T17:01:24.520 回答
2

System.exit(0);杀死你的整个程序。在你真正完成之前不要使用它。

您需要将整个程序(至少是您要再次执行的部分)放在一个循环中。当您单击重置按钮时,您将回到循环的顶部(或任何您想要的位置)。只要记住要有一个退出条件来终止循环,否则它将永远持续下去。

于 2017-04-17T17:03:50.307 回答