问答详情
源自:7-7 Java 中的静态内部类

this问题

https://img4.mukewang.com/5ac862e80001060406880555.jpg

为什么这里要加this,而本题不需要加this

提问者:慕前端6531350 2018-04-07 14:20

个回答

  • 噜噜雨
    2018-04-07 14:34:31
    已采纳

    this代表本类对象,如果成员变量和局部变量名称没有重复,this可以省略。

    图片上因为涉及到内部类,this代表哪个类的对象需要指明,是外部类的this就是HelloWorld.this,他的属性就是HelloWorld.this.name,如果是内部类的属性,则是Inner.this.name。

    代码中的16行,因为在本类,可以省略Inner写成this.name,因为局部变量和成员变量名称没有重复,可以省略this写成name。所以16行的name写成name或者this.name或者Inner.this.name结果都是一样的

  • qq_MrADNEWIL_0
    2018-06-07 21:04:34

    这是一个静态内部类里面的方法,访问外部类中的成员直接用 HelloWorld.score;

    而普通内部类里面的方法,访问外部类就需要 HelloWprld.this.score;