Java中Class.this和this有什么区别

数据用户:

有两种方法可以在该类中引用该类的实例。例如:

class Person {
  String name;

  public void setName(String name) {
    this.name = name;
  }

  public void setName2(String name) {
    Person.this.name = name;
  }
}

一种用于this.name引用对象字段,而另一种用于className.this引用对象字段。这两个参考之间有什么区别?

脱衣战士:

在这种情况下,它们是相同的。Class.this当您有一个非静态嵌套类需要引用其外部类的实例时,语法很有用。

class Person{
    String name;

    public void setName(String name){
        this.name = name;
    }

    class Displayer {
        String getPersonName() { 
            return Person.this.name; 
        }

    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章