经常会遇到写一些不好的代码,或者是不安全不规范的代码,等程序运行的时候才会发现错误等问题,一写代码经常这么写有写写法是错误的或者是不合适的,但是没有别人知道,还会一直错误下去,对自己的提高每有好处。
可以借助一些辅助工具发现在没有运行代码的时候发现这些错误并及时改正,这样减少开发中产生的BUG数量,提高代码质量。下面介绍一下find bugs(eclipse 插件) 帮助开发人员写出质量更高的代码来。举例出几个常见问题。
1. 类的名称首字符大写
public class testMain {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
testInt i = new testInt();
for (int t=0;t<8;t++){
int m =i.count();
System.out.println("result"+m);
}
}
}
当前类名testMain
首字母小写用find bugs 检查会提示警告The class name testMain doesn't start with an upper case letter
改正:
public class TestMain {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
testInt i = new testInt();
for (int t=0;t<8;t++){
int m =i.count();
System.out.println("result"+m);
}
}
}
find bugs 检查会提示警告消失
2. 方法名大写
同上 用find bugs 检查会提示一些警告Method names should start with a lower case letter
3.条件判断语句顺序问题(避免空指针异常)
原:
public class TestNull {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String sss=null;
if(sss.equals("2")){
//if("2".equals(sss)){
System.out.println("ssss");
}
else {
System.out.println("null point");
}
}
}
看上面代码编译器编译通过,肉眼一看就知道IF语句会出现空指针,上面代码很简单能看出来,但是吧这段代码放到很多代码中,不仔细很容易写出上面的代码。一般是通过换一种方法替换上面代码来避免空指针异常。find bugs 很容易检查出这个错误
改正:
public class TestNull {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String sss=null;
// if(sss.equals("2")){
if("2".equals(sss)){
System.out.println("ssss");
}
else {
System.out.println("null point");
}
}
}
这样运行就不会出空指针异常,用find bugs 检查会提示警告但是程序运行时没有错误的
陆续更新ING.............
分享到:
相关推荐
`find_bugs`工具是一款广泛使用的静态代码分析工具,它主要针对Java程序,旨在帮助开发者在编码阶段就发现潜在的错误和不良编程习惯,从而提高软件质量和可维护性。这款工具通过扫描字节码来检测可能存在的问题,而...
FindBugs是一款著名的静态代码分析工具,主要用于检测Java应用程序中的潜在错误和不良编程习惯。它通过分析字节码而非源代码来找出可能的问题,能够帮助开发者在程序运行之前发现潜在的bug,提升软件质量。在Android...
Findbug 是一个开源的 Eclipse 代码检查工具,能够简单高效全面地帮助我们发现程序代码中存在的 bug、bad smell 以及潜在隐患。它提供了简单的修改意见供我们重构时进行参考,通过使用它,可以一定程度上降低我们 ...
- **开源工具**:如**FindBugs**用于Java,**FindSecurityBugs**专门针对安全漏洞的检测。 **2. 安全和渗透测试** - **目的**:模拟攻击者的行为,评估系统的防御能力。 - **工具**: - **ZAP**(Zed Attack ...
2. **开发阶段**:在编码时,开发人员应遵循安全编码规范,并使用IDE(如SonarLint)和源代码静态分析工具(如SonarQube、Find Security Bugs)进行实时检查,减少安全漏洞的引入。同时,开源组件的安全性也需要关注...
在实际应用中,FindBugs可以帮助团队实施代码审查,提升代码质量标准。开发者可以通过消除FindBugs报告中的警告来逐步提升代码的健壮性和稳定性。同时,对于大型项目,FindBugs还可以作为持续集成的一部分,确保每次...