「每天一道面试题」说一说Java异常处理的心得体会?

「每天一道面试题」说一说Java异常处理的心得体会?

1.切勿捕获异常不处理

使用try-catch捕获异常后,无任何处理,这样的做法会吞噬异常,外层代码或调用方无法感知异常的发生。捕获异常后,打印错误日志,可以立即处理掉,也可以直接向外抛出或构建内部异常向外抛出,切勿无任务处理操作。

2.不要catch中捕获Exception异常

Exception代表的是异常的大类,而代码中通常需要捕获的是某某特定异常,进而进行特定的异常处理;而且,从写代码的角度来说,捕获清晰明了的特定异常会提升代码的可读性。

3.切勿使用e.printStackTrace()

e.printStackTrace()方法打印出的信息不利于跟踪出错的具体轨迹,特别是对于一些复杂的系统,所以切勿使用。

4.减小try块的范围

try-catch会影响JVM对代码进行优化,所以尽量减少try块中的代码,只对有必要的代码进行try。

5.切勿在finally块中对返回值进行操作

finally代码块一般用于收尾工作,例如释放资源、释放连接等,如果在这里有对返回值进行操作的处理,可能会被忽略。

6.有必要,才使用

每创建一个Exception实例,都会对栈信息进行快照,如果很频繁将会产生很大的开销。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值