一尘不染

Java何时使用'this'关键字

java

this在Java中使用关键字的最佳做法是什么?例如,我有以下课程:

class Foo {
    Bar bar;

    public Foo(Bar bar) {
         this.bar = bar;
    }
}

没关系,但是Java足够聪明,如果我将构造函数中的语句更改为

 bar = bar;

那么为什么要使用this关键字呢?(我意识到在某些情况下,完全有必要使用它,我只是在问这种情况)。实际上,出于可读性的考虑,我倾向于仅使用关键字,但是常见的做法是什么?例如,在整个商店中使用它会使我的代码看起来有些混乱

boolean baz;
int someIndex = 5;
this.baz = this.bar.getSomeNumber() == this.someBarArray[this.someIndex].getSomeNumber();

显然,代码很少,但是它说明了我的示例。在这些情况下,是否仅取决于个人喜好?


阅读 363

收藏
2020-03-14

共1个答案

一尘不染

如果我将构造函数中的语句更改为

  bar = bar;

假!它可以编译,但不会按照你的想法执行!

至于何时使用它,很多是个人喜好。我喜欢this在我的公共方法中使用,即使在不必要的情况下也是如此,因为这是发生接口的地方,并且断言是什么是我的,什么不是什么是很好的。

2020-03-14