-
我在 Java 的 finally 块里写了个 return 做收尾,结果 try 块里本该抛出的异常凭空消失了、本该返回的值也被悄悄换掉了,一个本该报错的方法竟然正常返回:一次 finally 里 return 吞掉了 try 结果的深度复盘
我有个方法 try 里做主要逻辑、finally 里做收尾,图省事在 finally 里也写了 return(或 finally 里调的清理方法会抛异常)。线上出了怪事:某个本该抛异常让上层感知失败的方法竟然正常返回了;有的方法 try 里明明 return 了算好的结果、实际返回的却是另一个值;异常和正确返回值都像凭空消失了,问题被掩盖直到下游拿着错误数据出更大乱子。复盘 try-finally…- 0
- 0
返回值
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!

