java – 使用try-catch-finally返回类型
发布时间:2020-05-25 22:37:33 所属栏目:Java 来源:互联网
导读:参见英文答案 Java’s return value in try-catch-finally mechanism4个 我试过以下代码片段: private Integer getnumber() { Integer i = null; try { i = new Integer(5);
|
参见英文答案 >
Java’s return value in try-catch-finally mechanism4个
private Integer getnumber() {
Integer i = null;
try {
i = new Integer(5);
return i;
} catch(Exception e) {
return 0;
} finally {
i = new Integer(7);
}
}
此方法返回5而不是7.
提前致谢. 解决方法发生这种情况是因为try..catch的finally块最终在try..catch中的代码完成后运行(无论成功与否);在您的代码的情况下,这是返回i发生的时间.由于这种行为,在您为其分配新值7之前,i的值已经被放入方法的返回变量中.以下将有效: private Integer getnumber(){
Integer i = null;
try {
i = new Integer(5);
}
catch(Exception e){
i = new Integer(0);
}
finally{
i = new Integer(7);
}
return i;
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
