2012-11-29 66 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

回答