· LooseCoupling: Avoid using implementation types (i.e., HashSet); use the interface (i.e, Set) instead
翻譯 鬆散耦合:避免使用實作類別(如 HashSet),使用介面(如 Set)代替
· CloneMethodMustImplementCloneable: The method clone() should only be implemented if the class implements the Cloneable interface with the exception of a final method that only throws CloneNotSupportedException. This version uses PMD's type resolution facilities, and can detect if the class implements or extends a Cloneable class
翻譯 存在複製方法類必須實現Cloneable介面: clone()方法只有在類實現了cloneable介面且伴隨一個final方法只拋出CloneNotSupportedException異常的情況下才要被實現。這個版本使用了PMD的類型分析工具,能夠檢測類是否實現或繼承了一個可複製的類
· UnusedImports: Avoid unused import statements. This rule will find unused on demand imports, i.e. import com.foo.*.
翻譯 無用的import:避免無用的import語句。這個規則按需尋找無用的import語句。
· SignatureDeclareThrowsException: It is unclear which exceptions that can be thrown from the methods. It might be difficult to document and understand the vague interfaces. Use either a class derived from RuntimeException or a checked exception. Junit classes are excluded.
翻譯 具體聲明拋出的異常:不確定方法中能夠拋出什麼樣的具體異常。為模糊的介面提供證明並理解它是很困難的。拋出的異常類要麼從RuntimeException中繼承或者拋出一個被檢查的異常。