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

为什么不要加this?

System.out.println("访问外部类的score"+HelloWorld.score);

正在回答

4 回答

静态成员属于整个类,即使没有对象,静态成员还是存在的。其他普通成员,只有创建相应类对象的时候才会分配内存,静态成员在编译时就会分配一个内存,即使没有对象,也可以用类名直接访问。要注意的是,它只会占用一个内存,所有当有不同对象访问静态成员时,静态成员的值都是一样的,并且有一个对象改变了它的值,所有其他对象访问该静态成员时,都会显示改变后的值

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

因为内类有权限访问外部类中的所有数据,加this是为了区分,相当于对象名吧。之前加this因为内部类和外部类都有name,因为方法具有就近原则不加this关键字标识的话,系统会直接取内部类中的name。说白了就是为了能让系统区分,HelloWorld.socre的意思是访问HelloWorld类(外部类)中的Score变量,没加this是因为只有一个score不用区分。

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

因为已经规定了外部类静态成员与内部类相同时,调用方法为“类名.静态成员”,

你要问为什么,其实我也不知道,大概是静态成员比较特殊吧

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

this是指当前对象  一般 用于get  set  方法 ,成员变量和在方法中的局部变量命名相同是,需要在方法中使用成员变量需要使用 this。

这是我对this的理解。希望对你有帮助。

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

举报

0/150
提交
取消

为什么不要加this?

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

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

帮助反馈 APP下载

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

公众号

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