【Java编程规范】可维护性篇

*【强制】在一个switch块内,每个case要么通过break/return等来终止,要么注释说明程序将继续执行到哪一个case为止;在一个switch块内,都必须包含一个default语句并且放在最后,即使空代码。

  • 【推荐】除常用方法(如getXxx/isXxx)等外,不要在条件判断中执行其它复杂的语句,将复杂逻辑判断的结果赋值给一个有意义的布尔变量名,以提高可读性。 说明:很多if语句内的逻辑相当复杂,阅读者需要分析条件表达式的最终结果,才能明确什么样的条件执行什么样的语句,那么,如果阅读者分析逻辑表达式错误呢? 正例:

    1
    2
    3
    4
    5
    6
    7
    8
    // 伪代码如下
    final boolean existed = (file.open(fileName, "w") != null) && (...) || (...);
    if (existed) {
    ...
    }
    反例: if ((file.open(fileName, "w") != null) && (...) || (...)) {
    ...
    }
  • 【推荐】避免采用取反逻辑运算符。
    说明: 取反逻辑不利于快速理解,并且取反逻辑写法必然存在对应的正向逻辑写法。
    正例: 使用 if (x < 628) 来表达 x 小于 628 。
    反例: 使用 if (!(x >= 628)) 来表达 x 小于 628 。