课程
/后端开发
/Java
/Java入门第二季
System.out.println("访问外部类中的score:" + HelloWorld.score ); //为什么不是HelloWorld.this.score或者this.score
2019-03-15
源自:Java入门第二季 7-7
正在回答
因为静态对象属于这个类所有对象公有的,不属于某一个具体的对象。而this表示该类的对象(即将类进行实例化之后,this就表示实例化之后的对象),在访问静态成员是是不需要指定具体的对象的。所以不需要this。
因为是静态成员变量所以在一开始就直接加载好了,所以我直接找到他的位置就可以用,但是普通成员变量是用的时候再加载所以我们就必须要告诉他要加载的是哪个位置上的成员变量。仅供参考!
this是被哪个类对象调用就指代哪个对象,但是这里外部类中的为静态变量,不需要生成对象,因此可以直接写成: 外部类.静态变量,新手一个,有错误忘谅解!
this 只能访问当前类对象的成员变量 访问不了外部类的同名变量
qq_慕函数2369942
慕尼黑9543844
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
3 回答如何在静态内部类里面访问外部类的非静态变量?
3 回答静态内部类能不能访问非静态外部类啊
2 回答内部类访问外部类为什么不用this?
3 回答静态内部类变量和外部类非静态变量重名怎么办
1 回答为什么静态内部类只能访问外部的静态成员
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号