阿里巴巴JAVA开发手册----(二)异常日志

本文详细介绍了阿里巴巴JAVA开发手册中关于异常处理和日志处理的规范,包括异常不应该用来做流程控制,避免大段代码try-catch,确保捕获异常后进行适当处理,以及在日志处理中使用SLF4J API,避免重复打印日志,合理设置日志级别,详细记录异常信息等,以提高代码质量和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)异常处理        

            1.不要捕获Java类库中定义的继承自RuntimeException的运行时异常类,如IndexOutOfBoundsException/NullPointerException,
            这类异常由程序员预检查来规避,保证程序健壮性。
                    正例:if(obj!=null){...}
            反例:try{obj.method()}catch(NullPointerException e){...}
            2.异常不要用来做流程控制,条件控制,因为异常的处理效率比条件分支低。
        
            3.对大段代码进行try-catch,这是不负责任的表现。catch时请分清稳定代码和非稳定代码,稳定代码指的是无论如何不会出错的代码。
            对于非稳定代码的catch尽可能进行区分异常类型,再做对应的异常处理。
              4.捕获异常是为了处理它,不要捕获了却什么都不处理而抛弃之,如果不想处理它,请将该异常抛给它的调用者。最外层的业务使用者,必须处理异常,将其转化为用户可以理解的内容。
              5.有try块放到了事务代码中,catch异常后,如果需要回滚事务,一定要注意手动回滚事务。
              6.finally块必须对资源对象,流对象进行关闭,有异常也要做try-catch.
                 说明:如果JDK7,可以使用try-with-resources方式。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值