1.工具类不应该有公有的构造函数
工具类是一系列静态成员或方法的集合,意味着它不可以被实例化,即使是抽象的工具类,它可以被继承,但也不可以有公有的构造函数。
Java类如果没有声明构造函数,则会默认有一个公有的构造函数,因此需要给工具类至少声明一个非公有的构造函数。
不符合要求的代码示例
class StringUtils { // Noncompliant
public static String concatenate(String s1, String s2) {
return s1 + s2;
}
}
解决方案
final class StringUtils { // Compliant
private StringUtils() {
}
public static String concatenate(String s1, String s2) {
return s1 + s2;
}
}
2.缺少javadoc
Shirft + Alt + J 快速注释方法
3.魔法数
魔法数是因为程序员使用到常数的时候直接使用,此种方法写出来的代码在别的程序员看来,这个常数就像一个魔法数字一样让人难以理解,所以应该避免使用魔法数
解决办法:定义常量
final int num = 100;
4。linelength超过100
linelength的设置主要是考虑到代码可能要打印到A4纸上
注意的eclipse统计每行字符数的时候每个空字符占用字节数和checkstyle不一样,适当设置大一点的参数