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

为什么静态内部类访问外部类同名边量前面不加this

System.out.println("访问外部类中的score:" + HelloWorld.score           );      //为什么不是HelloWorld.this.score或者this.score



正在回答

4 回答

因为静态对象属于这个类所有对象公有的,不属于某一个具体的对象。而this表示该类的对象(即将类进行实例化之后,this就表示实例化之后的对象),在访问静态成员是是不需要指定具体的对象的。所以不需要this。

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

因为是静态成员变量所以在一开始就直接加载好了,所以我直接找到他的位置就可以用,但是普通成员变量是用的时候再加载所以我们就必须要告诉他要加载的是哪个位置上的成员变量。仅供参考!

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

this是被哪个类对象调用就指代哪个对象,但是这里外部类中的为静态变量,不需要生成对象,因此可以直接写成: 外部类.静态变量,新手一个,有错误忘谅解!

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

this 只能访问当前类对象的成员变量 访问不了外部类的同名变量

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

qq_慕函数2369942

不懂别瞎说
2019-06-11 回复 有任何疑惑可以回复我~
#2

慕尼黑9543844

你说错了吧
2019-08-19 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么静态内部类访问外部类同名边量前面不加this

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号