1

在 VB 中,对于错误捕获有

Public Sub MySub()
    On Error GoTo Errr
    'do stuff
Errr:
    'handle error
    Resume Next
End Sub

它使用了宏伟的 Resume Next 命令。

在 Java 中,你有一个 try catch 块

try 
{
//some code
}
catch (Exception e)
{
//handle error
}

这似乎等同于 VB 错误捕获,但特别是没有 Resume Next 选项,因此 Java 只是在错误后退出整个代码块,而不是在错误后尝试运行其余代码。有没有办法在 Java 中获得 Resume Next 的强大功能?谢谢!

4

2 回答 2

1

只需在 catch 块之后放置您想要运行的代码,而不考虑任何错误。

try {
    // stuff that could cause error
} catch(Exception e) {
    // handle error
}

// do stuff

如果你要从 catch 块中抛出一个异常,但你仍然希望“do stuff”代码运行,你可以把它放在 finally 块中,如下所示:

try {
    // stuff that could cause error
} catch(Exception e) {
    // throw exception here
} finally {
  // do stuff that will run even when the exception is thrown
}
于 2013-04-19T01:05:00.117 回答
0

Java 中没有与 VB 的 resume 语句等价的语句;在 VB 中,根据错误情况,您可以选择在代码中的特定标签处恢复,以便在修复错误后重新运行代码,类似于 goto 语句;这在 java 中是不可能的,除非你在一个循环中,然后你可以使用 continue 到一个定义的标签块。

于 2014-08-18T16:39:09.757 回答