消灭 Java 代码的“坏味道”(18)

正例:

2.14.过时代码添加 @Deprecated 注解

当一段代码过时 , 但为了兼容又无法直接删除 , 不希望以后有人再使用它时 , 可以添加 @Deprecated 注解进行标记 。 在文档注释中添加 @deprecated 来进行解释 , 并提供可替代方案

正例:

3.让代码远离 bug

3.1.禁止使用构造方法 BigDecimal(double)

BigDecimal(double) 存在精度损失风险 , 在精确计算或值比较的场景中可能会导致业务逻辑异常 。

反例:

正例:

3.2.返回空数组和空集合而不是 null

返回 null , 需要调用方强制检测 null , 否则就会抛出空指针异常 。 返回空数组或空集合 , 有效地避免了调用方因为未检测 null 而抛出空指针异常 , 还可以删除调用方检测 null 的语句使代码更简洁 。

推荐阅读