繁体   English   中英

设置实例变量与方法参数同名吗?

[英]Setting instance variable with same name as method parameter?

如果我有这样的代码:

public class Foo {
    public int bar;

    public void setBar(int bar) {
        bar = bar;
    }
}

Eclipse警告我,该分配不会执行任何操作(出于明显的原因)。 我可以通过将其更改为this.bar = bar;来修复它吗this.bar = bar; 还是最好只使用一个不同的变量名?

使用this.bar = bar; 很好 大多数二传手都是这样编码的。

当您需要执行类似操作时,一种常见的做法是重命名function参数。

public void setBar(int theBar) {
    bar = theBar;
}

如果您不想这样做,请使用this. 前缀,像这样:

this.bar = bar;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM