重新启动程序

时间:2015-09-05 14:27:43

标签: java

我是Java新手。我正在尝试创建一个Java程序,它能够在程序(工作正常)中发生异常时重试。现在我遇到的问题是 for循环。在这段代码中,当for循环中出现问题时,程序本身将跳出该循环并转到catch方法。之后如果重试次数小于MAX_RETRIES ,则程序将 从头开始重新启动 。这就是我正在努力的方向。我想要的是让我们说如果打印时for循环中出现异常,请说5,我希望程序重试for循环中的异常发生而不是从头开始重新启动。有办法做到吗?我正在努力解决这个问题,似乎无法找到办法。将提供帮助和代码以供参考。这是我能想到的简化代码的最佳方式。在我的实际应用程序中,我现在使用的for循环是迭代数据库中的记录列表。

main.java

public class main {
    private static int retryCounter = 1;
    private static int MAX_RETRIES = 3;

    public static void main(String[] args) {

        int retry = 1;


        try {
            while (retry <= MAX_RETRIES) {

                //method1
                //stuff code
                //more code
                //method2


                for (int i = 0; i < 11; i++) {

                    System.out.println("i");
                }


            }

            System.out.println("-----Finish Process-----");


            break;
        } catch (Exception e) {

            e.printlnStackTrace();

            retry++;

            if (retry == MAX_RETRIES) {
                System.out.println("Program retried" + retry);
                System.out.println("Program Terminated");

            }

        }





    }

2 个答案:

答案 0 :(得分:1)

我认为它解决了你的问题

MetroWindow

答案 1 :(得分:0)

我有一个可能会有所帮助的想法。我无法显示任何示例代码,但在完成执行程序的每个步骤后,可能可以设置标志/信号 1 。然后,当程序重试时,它可以自动跳到它最后停止的代码中的那一点。

1:我不知道它在java中的名称是什么