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

java:不能对非静态字段 rand 进行静态引用

java:不能对非静态字段 rand 进行静态引用

白衣染霜花 2018-12-05 14:01:13
java:不能对非静态字段 rand 进行静态引用
查看完整描述

1 回答

?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

静态方法不能访问非静态成员(包括静态方法和静态变量),但非静态方法可以静态成员和非静态成员
方法或变量加上static声明就被定义为静态成员。
静态成员属于类所有,被类的所有对象共享,它在程序预编译期间就能确定。非静态成员属于对象所有,而对象需要在程序运行期间分配空间。故在预编译期间就能确定的静态成员不能访问需要在程序运行时才能确定的非静态成员。
针对你的问题,main是静态方法,它只能访问静态成员,所以它可以访问static的b,不能访问没有static声明的rand,解决方法就是在成员声明前加static关键字,表明该成员是静态成员。

查看完整回答
反对 回复 2018-12-21
  • 1 回答
  • 0 关注
  • 638 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信