2012-11-29 26 views
4

同样不变的是有一个Java的免费提供的静态代码分析工具,它可以检测到我使用相同的恒定值方法参数上所有调用的方法,所以我可以删除参数并在方法体内使用一个常量值?例如。在静态代码分析:方法参数上的所有调用

class A { 
    void methodA { 
     someMethod("first", 42); 
    } 
} 

class B { 
    void methodB { 
     someMethod("second", 42); 
    } 
    void methodC { 
     someMethod("third", 42); 
    } 
} 

我想必须报告的someMethod的第二个参数(假设这3个电话是所有调用该方法在我的项目)。

我在Eclipse编译器警告,Findbugs,CodePro Analytix或UCDetector中没有发现这种情况,但我可能错过了相应的设置。

编辑:只是为了确保:我不问如何通过重构去除常量值。我要求如何检测这种情况,因为这3个方法调用可能分布在几千个源文件中。

+0

的CheckStyle可以找到你的常量太 – Yahor10

+0

checktyle或的IntelliJ检查? – NimChimpsky

+0

这是不太可能有这样的工具。现有的工具不记得什么数据导致特定的行执行。 – Jayan

回答