COV.CMP

如果方法 compareTo 声明具有不同于 int compareTo(Object) 的签名,将出现错误。

漏洞与风险

Intent 可能实施 Comparable 接口的接口方法,但是由于此方法具有不同的签名,因此使用比较运算符时,它不是相同的方法并且不会被调用。

缓解与预防

声明类将实施 Comparable,并声明使用 int compareTo(Object) 方法。

示例 1

复制
         String name;
         int compareTo(MyClass a) {
             return name.compareTo(a.name);
         }

针对第 15 行报告 COV.CMP:方法 compareTo(..) 应具有签名“public int compareTo(Object)”