-
findbugs 之多维数组 使用static 的警报5
public final static double[][][] Y_MIN_SCOPE= { {{-120, -25}}, {{0, 254}}, {{0, 254}}, {{0, 254}} }; public final static double[] GRID_HEIGHT = {1,1,1,1}; public final static String[][] TAG_NAMES= { {"RSRQ(dB)","RSRP(dBm)"}, {"TA(16*Ts)","UE TxPower(dBm)"}, {"TA(16*Ts)","RSRP(dBm)"}, {"TA(16*Ts)","RSRQ(dB)"} };
我这样定义了 多个数组,均使用了 public final static 修饰符,
findbugs给的修改提示是
In LTE3DConstant
Field LTE3DConstant.Y_MIN_SCOPE
At LTE3DConstant.java:[line 53]
Y_MIN_SCOPE should be package protected
Bug Type: MS_PKGPROTECT
Bug Category:MALICIOUS_CODE (Malicious code vulnerability)
Source File:
Line:53
protected final double[][][] Y_MIN_SCOPE= { {{-120, -25}}, {{0, 254}}, {{0, 254}}, {{0, 254}} };
修改成这样就不报错了,
请问为什么要修改为 protected ,而且不能使用static ?
问题补充:love_ai87 写道findbugs报错,又不是程序报错,这个只是建议而已,可能是fundbugs根据你项目的实际调用情况,发现在包外面没有调用过这个数组,所以就建议你改成包权限的
关键是static 这个 为什么不能使用
问题补充:love_ai87 写道findbugs报错,又不是程序报错,这个只是建议而已,可能是fundbugs根据你项目的实际调用情况,发现在包外面没有调用过这个数组,所以就建议你改成包权限的
还有 protected 我觉得关键也不是这个原因,
如果只是考虑到项目实际调用情况的话,
那可以有N多个 权限需要修改的了。
难道还检查所有变量的调用范围,那可不只这些变量需要修改的了。
问题补充:xfei6868 写道这个的确应该跟你的使用有关系,改成 protected 是指只在你的子类或本身出现的情况。而去掉static可能是考虑到你的这个常量只在自己本身或子类中调用,根据其调用判断出来应该只是一个对象常量,而不需要是类常量,所以提示你去掉static。
你好,这个是公共常量类 没有子类,也不会在自身使用。
问题补充:xfei6868 写道java中能分辨出一个类是公共常量类吗?
在外部的调用中,三个常量都是什么情况呢?
Y_MIN_SCOPE常量在外部如果直接用类名调用过的话,肯定不会有这样的报错了。
你好,定义为公共常量类这个确实是我们这边的开发规范。
Y_MIN_SCOPE常量我是在外直接用的,正因如此 报这个错,我才会不解上来询问的。
问题补充:xfei6868 写道能写出你使用 的情况吗? 如果使用了 改成你现在的不是要报真正的错误了吗?不好意思 发帖时日已久,我已按照要求修改 为通过实例调用。
要不然通过不了公司的代码检测.. 现在还是不解。
问题补充:xfei6868 写道你能写出在外部是怎么调用的吗? 如果你说在外部是有调用的话,现在是 protected 变量肯定是在外部无法访问的啊!同包中是可以访问的啊
2010年7月27日 15:37
7个答案 按时间排序 按投票排序
-
既然在同一包中被访问的,提示改为protected 并不矛盾啊!
而static的修改,应该的情况肯定是,你使用对象调用的而不是类直接调用。
显然你使用的公共方法类的使用方法出的问题。2010年8月11日 15:57
-
java中能分辨出一个类是公共常量类吗?
在外部的调用中,三个常量都是什么情况呢?
Y_MIN_SCOPE常量在外部如果直接用类名调用过的话,肯定不会有这样的报错了。2010年8月11日 15:08
-
这个的确应该跟你的使用有关系,改成 protected 是指只在你的子类或本身出现的情况。而去掉static可能是考虑到你的这个常量只在自己本身或子类中调用,根据其调用判断出来应该只是一个对象常量,而不需要是类常量,所以提示你去掉static。
2010年8月11日 14:38
-
findbugs报错,又不是程序报错,这个只是建议而已,可能是fundbugs根据你项目的实际调用情况,发现在包外面没有调用过这个数组,所以就建议你改成包权限的
2010年7月27日 17:23
相关推荐
eclipse中FindBugs_安装使用;eclipse FindBugs 安装使用
Findbugs代码检查工具使用说明,具体操作步骤
findbugs 1.3.9 findbugs 1.3.9 findbugs 1.3.9 findbugs 1.3.9 findbugs 1.3.9 findbugs 1.3.9
findbugs插件使用文档
FindBugs是一个匹配编译代码模式,而非使用bug数据库的工具。当提供源代码时,FindBugs还可高亮显示检测出bug的代码行。 在它的3.0.1版本中,FindBugs继续保持着数以百计的bug描述。根据bug的严重程度,FindBugs将...
findbugs安装及使用手册,方便开发人员检查自身代码问题,
FindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析,帮助提高代码质量以及排除隐含的缺陷。
myeclipse上安装FindBugs步骤和使用说明
共整理了findbugs错误类型37个,有错误举例,同时附有正确写法。
最新版checkstyle,findbugs以及安装使用说明。测试无误,可以使用
整理总结的一份FindBugs安装及配置使用说明,希望对你有帮助。
findbugs使用说明:包含eclipse插件和maven插件的详细使用。
findbugs在eclipse中安装及使用,包含如何导出简易报表
Eclipse _插件 _FindBugs _使用手册.doc想不会都难啊 。
FindBugs既提供可视化 UI 界面,同时也可以作为 Eclipse插件使用。文本将主要使用将 FindBugs作为 Eclipse插件。在安装成功后会在 eclipse中增加 FindBugs perspective,用户可以对指定 Java类或 JAR文件...
NULL 博文链接:https://tianjun309.iteye.com/blog/854389
FindBugs是一个专门分析JAVA代码问题的静态代码扫描工具,在FindBugs中,选择待扫描的文件(FindBugs其实就是对编译后的class进行扫描,藉以发现一些隐藏的bug。)。如果这些.class文件有对应的源文件,这样便可以从...
赠送jar包:findbugs-annotations-1.3.9-1.jar; 赠送原API文档:findbugs-annotations-1.3.9-1-javadoc.jar; 赠送源代码:findbugs-annotations-1.3.9-1-sources.jar; 赠送Maven依赖信息文件:findbugs-...
Findbugs安装及使用说明.doc下载, Findbugs安装及使用说明.doc下载
自己整理的findbugs的简单使用实例