gpt4 book ai didi

java - 最后总是在方法完成之前执行?

转载 作者:行者123 更新时间:2023-11-29 07:52:31 26 4
gpt4 key购买 nike

我遇到了一个案例,我想这样写我的代码:

try {  
something();
return success;
}
catch (Exception e) {
return failure;
}
finally {
System.out.println("i don't know if this will get printed out.");
}

(来自 Does finally always execute in Java?)

我的问题是:

finally 总是在方法完成之前执行,还是在额外的thread 中运行(因为方法已经在对象返回时完成)?

换句话说:是否保证finally在main方法继续之前执行?

最佳答案

一切都发生在同一个线程中,只是顺序与程序顺序不同:

  1. return x只在x被确定为返回值的部分执行;
  2. finally block 执行;
  3. 1. 中记住的值是从方法返回的——除非finally block 执行它自己的return 语句/抛出一个异常(exception)。

关于java - 最后总是在方法完成之前执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20043415/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com