最近工作中开始使用代码扫描相关的工具对研发的代码就行质量评估,扫描了许多问题,为了提升自己的能力,有必要研究一下这些规则细节,特开此专栏,一为学习总结,二为记录成长过程,赋能广大博友,希望大家喜欢
On the other hand, constants can be referenced from many places, but only need to be updated in a single place.
With the default threshold of 3:
public void run() { prepare("action1"); // Noncompliant - "action1" is duplicated 3 times execute("action1"); release("action1"); } @SuppressWarning("all") // Compliant - annotations are excluded private void method1() { /* ... */ } @SuppressWarning("all") private void method2() { /* ... */ } public String method3(String a) { System.out.println("'" + a + "'"); // Compliant - literal "'" has less than 5 characters and is excluded return ""; // Compliant - literal "" has less than 5 characters and is excluded }To prevent generating some false-positives, literals having less than 5 characters are excluded.