this问题

来源:7-7 Java 中的静态内部类

慕前端6531350

2018-04-07 14:20

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

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

写回答 关注

2回答

  • 噜噜雨
    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结果都是一样的

    _mirac... 回复慕前端653...

    看他的回复表示没看懂,为什么这节加了this错了?

    2018-05-23 16:55:30

    共 2 条回复 >

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

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

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

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530559 学习 · 6091 问题

查看课程

相似问题