在错误/恢复下一个模式上是否存在java等效的vb?

时间:2013-04-19 00:56:39

标签: java vb.net try-catch next resume

在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的强大功能?谢谢!

2 个答案:

答案 0 :(得分: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
}

答案 1 :(得分:0)

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