《Java开发手册》v1.5.0 华山版编码规约解读之异常处理

1.1 空指针和数组索引越界异常自己处理

在这里插入图片描述

1.2 不要对大段代码进行 try catch

在这里插入图片描述

1.3 思考什么时候应该在方法上抛出异常

在这里插入图片描述

1.4 使用 try with resource 方式关闭资源

在这里插入图片描述
原来我们的写法可能是这样的

public static void main(String[] args) {
    FileInputStream inputStream = null;
    try {
        inputStream = new FileInputStream(new File("test"));
        System.out.println(inputStream.read());
    } catch (IOException e) {
        throw new RuntimeException(e.getMessage(), e);
    } finally {
        if (inputStream != null) {
            try {
                inputStream.close();
            } catch (IOException e) {
                throw new RuntimeException(e.getMessage(), e);
            }
        }
    }
}

建议JDK7 之后,如今大多用JDK8 了,因此建议今后这么写

public static void main(String[] args) {
    try (FileInputStream inputStream = new FileInputStream(new File("test"))) {
        System.out.println(inputStream.read());
    } catch (IOException e) {
        throw new RuntimeException(e.getMessage(), e);
    }
}
  • 利用try-with-resource语法更优雅的关闭资源,且代码更简洁。
  • 使用下面这种方式打开的资源使用完毕后会自动关闭。
try(资源一;资源二){   
.... }catch (IOException e) {
         throw new RuntimeException(e.getMessage(), e);  
}
  • 值得注意的是,如果有多个资源,那么最后一个资源不需要加分号

1.5 不要在try 和 finally 里return

在这里插入图片描述

1.6 空指针产生的场景

在这里插入图片描述

1.7 自定义异常的使用场景

在这里插入图片描述

也就是说如果必须抛出Exception 或Throwable 类型的异常时候,想修复这类的sonar 代码问题,那么自定义异常是一个不错的选择

1.8 日志处理

1.8.1 统一使用lombok 插件写日志

关于用法Spring Boot 2.x 最佳实践之 lombok集成

1.8.2 日志保留期限

在这里插入图片描述

1.8.3 日志配置命名

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客星云

谢谢认可,希望对你的学习有帮助

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值