这些PMD规则的确切原因是什么?避免重新分配'?

时间:2016-12-08 05:29:30

标签: pmd

不建议将值重新分配给传入参数。改为使用临时局部变量。

1 个答案:

答案 0 :(得分:2)

代码清晰度。有些人认为,将值赋给方法体内的参数是一种不好的方法,因为它有时令人困惑。一些开发人员更喜欢总是假设在方法运行期间从未为参数赋值任何值。

public class Foo {
    private void foo(String bar) {
        // ...
        bar = "something else";
        // ...
    }
}

您希望bar是调用者给出的值,而是覆盖它。您可以轻松地将其改写为避免pmd警告:

public class Foo {
    private void foo(String bar) {
        String myBar = bar;
        // ...
        myBar = "something else";
        // ...
    }
}