我知道头痛涉及在try / catch / finally块中返回-在情况下,即使在try或catch块中的返回应该执行的情况下,finally的返回始终是方法的返回。
但是,是否同样适用于System.exit()?例如,如果我有一个try块:
try {
//Code
System.exit(0)
}
catch (Exception ex) {
//Log the exception
}
finally {
System.exit(1)
}
如果没有例外,将调用哪个System.exit()?如果出口是一个return语句,则将始终调用System.exit(1)行。但是,我不确定exit的行为是否与return不同。
在极端情况下,代码很难复制,即使不是不可能,因此我不能编写单元测试。如果有几分钟的空闲时间,我将在今天晚些时候尝试进行实验,但是我还是很好奇,也许SO上的某人知道答案,可以在我无法运行之前提供答案。实验。
侃侃无极
守候你守候我
相关分类