gpt4 book ai didi

java - 使用 finally 没有捕获

转载 作者:行者123 更新时间:2023-11-29 04:48:23 24 4
gpt4 key购买 nike

我有一个要执行的测试。无论它是通过还是抛出错误,我都想关闭它打开的案例。我在类的顶部有 String theCase = null;然后在 executeText() 中,我会在案例打开后设置它。

所以我这样做了:

try {
executeTest(tContext);
} catch (Throwable t) {
throw t;
} finally {
if (theCase != null) {
closeCase(user, theCase);
}
}

我在想。我需要 catch (Throwable t) 吗?我仍然希望抛出错误,但首先我希望它能结案。不抓不扔,最后就不扔了吗?还是不会被捕获并抛出异常而不执行finally? finally有点不清楚。

最佳答案

Do I need the catch (Throwable t)?

不,你不知道。

事实上,这是有害的,因为如果你像那样捕获并抛出 Throwable,那么对于某些版本的 Java,你将需要将封闭方法声明为 throws Throwable ...等等。 (这是 Java 8 中的地址,IIRC。)

关于java - 使用 finally 没有捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36338308/

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