0
我正在测试CodePro Anlaytix(Eclipse插件)以检查项目中的代码样式。 CPA告诉我,变量“titleParam”和“descParam”中的变量具有空值。CodePro Analytix - 我没有得到审计规则“Variable has Null Value”
下面是类:
/**
* fdas fsda fsda fsa
* @version 1.0
*/
public class CodeProItem {
/**
* Field title.
*/
private String title;
/**
* Field desc.
*/
private String desc;
/**
* Method getTitle.
* @return String
*/
public String getTitle() {
return title;
}
/**
* Method setTitle.
* @param titleParam String
*/
public void setTitle(String titleParam) {
this.title = titleParam;
}
/**
* Method getDesc.
* @return String
*/
public String getDesc() {
return desc;
}
/**
* Method setDesc.
* @param descParam String
*/
public void setDesc(String descParam) {
this.desc = descParam;
}
}
这里是规则的摘要(从CPA DOC):
被保证有一个空值,并在 表达式中使用的变量可能表示程序员忘记用其实际值初始化变量 。
规则“变量具有空值”被激活,这是代码的例子,将通过这条规则被捕获(注册会计师DOC):
public boolean myMethod(String param)
{
String tmp = null;
if (tmp.equals(param)) {
return true;
} else {
return false;
}
}
我得到的例子,但为什么它是否说我在setters中的参数是null?
那么我禁用了这个规则。设置者没有被调用,我的项目中只有1个类(用于测试CodePro)。 CodePro仍然非常有趣,它是findbugs,codestyle和指标之间的混搭:) – mrmuggles 2012-01-17 21:39:26