为了账号安全,请及时绑定邮箱和手机立即绑定

this问题

https://img1.sycdn.imooc.com//5ac862e80001060406880555.jpg

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

正在回答

2 回答

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

2 回复 有任何疑惑可以回复我~
#1

慕前端6531350 提问者

thank you very much
2018-04-11 回复 有任何疑惑可以回复我~
#2

_miracle 回复 慕前端6531350 提问者

看他的回复表示没看懂,为什么这节加了this错了?
2018-05-23 回复 有任何疑惑可以回复我~

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

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

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530630    人
  • 解答问题       6091    个

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

进入课程
意见反馈 帮助中心 APP下载
官方微信