Findbugs使用总结(一)——Bad practice

背景:由于版本升级,界面大改,需要对项目进行重构,同时从eclipse迁移到as上,部分代码(原业务不变部分)从旧项目copy。本来使用Godeyes测试下项目bug,虽然能扫出问题,但无法快速定位隐患文件及行数(相比Findbugs)。


Findbugs使用总结(一)——Bad practice_第1张图片
图示Godeyes扫描后生成的报告文件


Findbugs使用总结(一)——Bad practice_第2张图片
顺手记录Godeyes扫描结果

后来使用Findbugs测了下,稍微总计一下。如下为Findbugs测试结果:

Findbugs使用总结(一)——Bad practice_第3张图片
截图

1.Bad practice(写代码中的坏习惯)

(1)Confusing method name(混淆的类、方法、字段名)

    a.Class names should start with an upper case letter(类名首字母应该大写)

扫描含R文件,仅举例

   b.Method names should start with a lower case letter(方法名首字母应该小写)

   c.Field names should start with a lower case letter(字段名首字母应该小写)

Findbugs使用总结(一)——Bad practice_第4张图片

(2)Bad use of return value from method

   a.Method ignores exceptional return value(对于一些方法执行后没有返回成功或失败)

Findbugs使用总结(一)——Bad practice_第5张图片

(3)Stream not closed on all paths

    a.Method may fail to close stream(一些流使用后没有关闭)

Findbugs使用总结(一)——Bad practice_第6张图片

(4)Incorret definition of Serializable class

a.Non-transient non-serializable instance field in serializable class(在可序列化的类中存在不能序列化或者不能暂存的数据)

Findbugs使用总结(一)——Bad practice_第7张图片
声明为静态的不能序列化

b.Non-serializable class has a serializable inner class(在没有序列化的类中有实现序列化的内部类)

Findbugs使用总结(一)——Bad practice_第8张图片

你可能感兴趣的:(Findbugs使用总结(一)——Bad practice)