没有必要将布尔变量和布尔值进行比较,应该确保在逻辑表达式中不出现“ true ”或“ false ”这两个布尔字面值:
代码清单 18 避免在逻辑表达式中出现布尔字面值
boolean success = init();
if (success == true) // 应该更正为 if(success)
{
...
}
该审查内容对应于“ Superfluous Content ”下的“ Equality Operations on Boolean Arguments ”设置项。
类中 private 的成员方法和成员变量不可能在外部类中调用, JBuilder 2005 如果发现 private 的成员变量或方法并没有在内部的 protect 或 public 方法中使用,即这个成员永远不会在运行期得到引用,而成为一个无用的成员变量和方法。审查机制将其标识为未使用的成员,并予以报警。
代码清单 19 无用的成员
public class Unuse
{
private String name;
public Object value;
private Object getValue()
{
return value;
}
private void print()
{
System.out.println(getValue() + " = " + value);
}
}
代码清单 19 中 name 变量, getValue() 及 print() 方法都是无用的方法,因为不可能通过外面的类访问到这些成员, Unuse 也没有提供调用这些成员的接口,所以这些成员都可以从类中清除。
该审查内容对应于“ Superfluous Content ”下的“ Member is Not Used ”设置项。
接口都是抽象的,接口中定义的方法都是抽象且公有,即 public abstract ;接口中的常量都是 public static final 的。所以如果在接口定义、接口成员方法及接口常量声明时使用了这些修饰符则是多余的, JBuilder 2005 对此作出审查,并报告这些多余的修饰。
代码清单 20 多余的接口修饰符
interface Colors {
public static final int RED = 1;
public abstract void getColorName(int color);
}
代码清单 20 中粗体的修饰符都是多余的,应该去掉。
这些审查内容可以通过“ Superfluous Content ”下的“ Obsolete Interface Modifiers ”和 “ Unnecessary Member Modifier ”审查项来设置。