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不一樣,適當設置大一點的參數