异常处理

通过编程无法避免的,用已检查异常异常处理。比如网络断开。如DataFormatException

RuntimeException通过编程可以避免,要在编程时对出现的RuntimeException的情况判断。比如除数是0,数组越界等。

但现在还有比较流程用RuntimeException来替换掉所有有Exception。这种情况主要是为了代码更美观。在调用链上谁可以处理谁就可以捕。用RuntimeException封装Exception的两种方法,直接封装和用RuntimeException子类。详见:《java编程思想P280

 

异常和方法返回值的选择,个人倾向于方法返回值。

如果发生程序不可继续执行的异常,先做日志,再抛出runtimeException,上层不处理,程序就会退出。

用时注意:在catch中的语句如果抛出异常的情况,如果在循环中进行try-catch,如果在catch中未catch,会造成退出循环。

} catch (Exception e) {

try {

     LogUtil.error(LogUtil.ADDCONSUME, "addConsume error: " + threadId);

     } catch (Exception ee) {

 

     }

}

gradeResult = upGrade.upGradeWithSingleTask(orderTask);如果出现异常会接不到返回值,可以用方法传回返回值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值