java的try catch语句在循环里执行,如果抛出异常,还继续循环吗?谢谢了!

2024-10-30 23:19:51
推荐回答(4个)
回答1:

  1. 如果异常发生的位置在try代码块里,那么如果在catch里,没有主动抛出异常,并且catch的代码没有发生异常,循环继续。

  2. 如果异常发生在catch代码块里,而程序没有对catch里的异常进行try-catch,会中断循环。

  3. 总之,循环是否中断,看 代码是否自己将异常处理了,如果程序处理了,不抛给 JVM,那么循环就不会终止,另外要注意自己的catch代码块是否也可能出现异常。

  4. 语句会抛出你自定义的异常,这种异常程序要求必须try----catch处理或者声明抛出异常。

  5. throwsXXException(自定义异常)想要重试还是异常就终止的话,需要声明抛出异常,也就是告诉虚拟机,如果此时再次抛出异常,则直接抛给调用者,如果调用者没有对该异常进行处理,那么程序会弹出提示异常关闭。

回答2:

不一定,看业务需求。如果是不重要的处理队列,处理完成比保证每一个都正确更重要,则可以catch后只标记,再继续执行下一个。

回答3:

如果异常发生的位置在try代码块里,那么如果在catch里,没有主动抛出异常,并且catch的代码没有发生异常,循环继续。
如果异常发生在catch代码块里,而程序没有对catch里的异常进行try-catch,会中断循环。

总之,循环是否中断,看 代码是否自己将异常处理了,如果程序处理了,不抛给 JVM,那么循环就不会终止,另外要注意自己的catch代码块是否也可能出现异常。

回答4:

不会,异常后程序大多都有地方缺了一部分程度