java: 异常:总是到达最后?

标签 java exception runtimeexception try-catch-finally

Possible Duplicate:
Does a finally block always run?

让我们想象一下以下场景:

public void myMethod() throws MyException
  try
  {
     // do something
     // an Exception (for example an individual written MyException which extends 
     // "Exception" is thrown here
  }
  catch (OtherException e)
  {
    // do something
  }
  finally 
  {
    // do something else
  }
}

如果“MyException”在 try block 中抛出并且不会被捕获 - 它们仍然会到达finally block ,对吗?

如果是抛出运行时异常怎么办?会到达finally block 吗?

是否存在无法到达finally block 的情况?

感谢您的回答:-)

最佳答案

除非虚拟机崩溃或调用 System.exit,否则始终会调用 Final。

关于java: 异常:总是到达最后?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10532117/

相关文章:

c# - 当 Application.Run() 发生异常时,您有什么选择?

java - 使用 Selenium Java 测试用例调用 CLICK 时获取 "org.openqa.selenium.ElementClickInterceptedException"

java - 使用 Guice,如何注入(inject)父类(super class)的构造函数参数?

java - 为什么 ArrayList 的排序方法比 Java 中的 Arrays 快?

ruby - Ruby 中未处理的异常

java - 如何验证外部进程是否异常终止?

java - 读取我的网络驱动器上的所有文件和文件夹

java - 为什么保存并重新加载 KeyStore 后 Key.getAlgorithm 返回不同的结果

Android 选项卡操作栏

java - 包裹:无法编码值 android.util.Pair