慕前端6531350
2018-04-07 14:20
为什么这里要加this,而本题不需要加this
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结果都是一样的
这是一个静态内部类里面的方法,访问外部类中的成员直接用 HelloWorld.score;
而普通内部类里面的方法,访问外部类就需要 HelloWprld.this.score;
Java入门第二季 升级版
530559 学习 · 6091 问题
相似问题