以下是我在检查项目pmd的时候积累下来的,和大家分享下,呵呵。
1:
Use equals() to compare strings instead of '==' or '!='
解释:
使用equals()比较,而不是字符串'=='或'!='
2:
String.indexOf(‘char’)的速度比String.indexOf(“字符串”)。
解释:
比如String.indexOf('d')的速度就比String.indexOf("d")要快
3:
Avoid if (x != y) ..; else ..;
解释:
pmd说避免把判断非摆在前面,这样会引起阅读混淆,要判断的话,就把 == 的放在前面,掉转下就好的,容易读和理解。
4:
x.equals("2"); // should be "2".equals(x)
that way if the String is null you won't get a NullPointerException, it'll just return false
解释:
如果参数在前面,如果参数是空的话,程序会抛出NullPointerException,所以
应该把确定的字符串放在前面,把参数放在括号里面
5
建议:Substitute calls to size() == 0 (or size() != 0) with calls to isEmpty()
意思是说对List类的if(list.size()==0),建议使用isEmpty()来操作
6
if (Integer.parseInt(newInput) == 0)
{
return true;
} else
{
return false;
}
没有必要为一个返回true和false的行为做if else 直接
eturn Integer.parseInt(newInput) == 0 就行了
7:
public class Foo {
public int foo() {
int x = doSomething();
return x; // instead, just 'return doSomething();'
}
}
Avoid unnecessarily creating local variables
如果只是返回doSomething的返回值,就没必要在弄一个实体了
8:
String.trim()。长度()== 0是一种低效的方法来验证一个空字符串。
9:
public class Foo {
private int x; //Why bother saving this?
public void foo(int y) {
x = y + 5;
return x;
}
}
如果x只用于foo这个方法。那么。建议放在foo里面当局部变量不要做全局变量了
10:
用equals来判断好过 ==
11:
判空用isEmpty
12
private List<MenuFunction> menuFunctionList = new ArrayList<MenuFunction>();
而不要
private ArrayList<MenuFunction> menuFunctionList = new ArrayList<MenuFunction>();
好像是说更支持多态吧。我也不知道,感觉大吃小总比小吃小好。List吃Arraylist.
分享到:
相关推荐
PMD是一款开源的静态代码检测工具,可以检查代码的质量问题,文件是对PMD检测规则进行说明,解压密码:PMD。
PMD是一款采用BSD协议发布的Java程序代码检查工具。该工具可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。该软件功能强大,扫描效率高,是Java程序员debug的好帮手。 ...
Eclipse PMD插件分析代码规则(中文),描述部分有中文解释,待补充。
PMD是一款采用BSD协议发布的Java程序代码检查工具。该工具可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。该软件功能强大,扫描效率高,是Java程序员debug的好帮手。 ...
PMD是一款静态代码分析工具,它能够自动检测各种潜在缺陷以及不安全或未优化的代码。 PMD更多地是集中在预先检测缺陷上,它提供了高度可配置的丰富规则集,用户可以方便配置对待特定项目使用那些规则
很好用的Java代码漏洞检测的工具 可以很容易的就检出出你所写的代码 有哪些漏洞
pmd代码检查工具使用心得,自己从网上收集了一些资料结合自己的使用整理出来的一个文档,希望给大家带来一些帮助,pmd是个不错的代码检查工具
PMD:用于根据源代码分析查找不良的编程习惯
pmd-bin 静态代码分析工具 PMD是静态源代码分析器。 它发现常见的编程缺陷,例如未使用的变量,空的catch块,不必要的对象创建等。 它主要涉及Java和Apex,但支持其他六种语言。 PMD具有许多内置检查(以PMD术语,...
myeclipse插件java代码质量检测 findbug pmd可以发现代码中的问题,实现自动的检测和优化代码,sourcecounter可以统计代码量
PMD是一款采用BSD协议发布的Java程序代码检查工具。该工具可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。该软件功能强大,扫描效率高,是Java程序员debug的好帮手。 ...
PMD正是这样一种工具,可以直接使用它自带的规则(当然也可以使用自己的规则)对Java源程序进行分析找出程序存在的问题,可以很大程度上的减轻代码检查工作的繁琐,为项目组今后的维护和开发工作起到指导的作用。...
Eclipse代码分析工具使用PMD
PMD是一款采用BSD协议发布的Java程序代码检查工具。该工具可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等。该软件功能强大,扫描效率高,是Java程序员debug的好帮手。与...
阿里巴巴Java代码质量检测插件:p3c-pmd-2.1.1.jar https://github.com/alibaba/p3c
自己整理的PMD检查的各个规则说明,其中打○的是我自己用的规则,大家自己按实际需要选择吧,有不对的地方请多多指教。
可以利用p3c-pmd-2.0.0.jar来实现基于阿里代码规约的代码规范检测。执行命令: $JAVA_HOME/bin/java -Dpmd.language=en -cp $BASE_PATH/p3c-pmd-2.0.0.jar net.sourceforge.pmd.PMD -d $TEMPDIR -R rulesets/java/...
PMD是一种开源分析Java代码的工具,通过静态分析获知代码错误,该工具可以做到检查Java代码中是否含有未使用的变量、是否含有空的抓取块、是否含有不必要的对象等等
PMD是一种分析Java代码错误的工具。与其他分析工具不同的是,PMD通过静态分析获知代码错误。也就是说,在不运行Java程序的情况下报告错误。PMD附带了许多可以直接使用的规则,利用这些规则可以找出Java源程序的许多...
Java代码检查工具 PMD ,PMD是一款采用BSD协议发布的Java程序代码检查工具。该工具可以做到检查Java代码中是否含有未...