21xrx.com
2024-12-23 00:35:14 Monday
登录
文章检索 我的文章 写文章
Java 中 return 与 finally 执行顺序
2023-06-16 13:05:57 深夜i     --     --
Java return finally try 异常 栈帧 调用栈

Java 中,return 语句用于方法返回值,并根据返回类型返回相应的值。finally 语句块是在 try 块后面必须执行的代码,无论 try 块是否有异常。

如果 return 语句位于 try 块中,finally 语句块也会在方法返回之前执行。在 finally 语句块执行完毕之后,方法返回所在的栈帧将被销毁和弹出调用栈。如果在 finally 中添加了 return 语句,则它将覆盖 try 块中的 return 语句。

如果在 try 中的 return 语句前抛出了异常,finally 块中的代码仍会执行,直到方法完全退出。但是,在 finally 块内抛出异常会立即中止方法的执行,并再次抛出异常。

综上所述,finally 块中的代码将总是被执行,并可能影响方法返回的值。因此,开发人员应该小心谨慎地使用 finally 块,在其中不建议包含过于复杂或有风险的操作。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复