Redis高级项目实战,Java异常处理的误区和经验总结

本文总结了Java异常处理的11个常见误区,包括在循环中捕获异常、使用Exception捕获所有异常、多层次封装异常、多层次打印异常等,并提供了改进方案。同时,文章提及Redis在实际项目中的高级应用。
摘要由CSDN通过智能技术生成

清单 5


public void retrieveObjectById(Long id){

 try{

    //..some code that throws SQLException

 }

 catch(SQLException ex){

    throw new RuntimeException(“Exception in retieveObjectById”, ex);

 }

 finally{

    //clean up resultset, statement, connection etc

 }

} 

这个误区比较基本,一般情况下都不会犯此低级错误。

误区五、将异常包含在循环语句块中

如下代码所示,异常包含在 for 循环语句块中。

清单 6


for(int i=0; i<100; i++){

    try{

    }catch(XXXException e){

         //….

    }

} 

我们都知道异常处理占用系统资源。一看,大家都认为不会犯这样的错误。换个角度,类 A 中执行了一段循环,循环中调用了 B 类的方法,B 类中被调用的方法却又包含 try-catch 这样的语句块。褪去类的层次结构,代码和上面如出一辙。

误区六、利用 Exception 捕捉所有潜在的异常

一段方法执行过程中抛出了几个不同类型的异常,为了代码简洁,利用基类 Exception 捕捉所有潜在的异常,如下例所示:

清单 7


public void retrieveObjectById(Long id){

    try{

        //…抛出 IOExcept
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值