在javac时候,出现错误"无法从静态上下文中引用非静态 变量 l ",是怎么回事?怎么解决啊?
3个回答
展开全部
意思就是你要是在静态方法中调用非静态变量,也就是实例变量的话,那么就得实例化一个对象,然后调用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
静态方法/块中不能引用非静态变量/方法!
这里要从static关键字说起
static修饰的静态变量/方法,是独立于对象之外的,他只在类第一次加载时进行初始化。
static具有独立的内存空间且只分配一次。
非静态变量为什么不能再静态方法中引用呢?
通俗一点说非静态变量在对象没有创立时,是没有初始化的(内存空间没有),所以你在静态方法中引用,静态方法在初始化的时候,并不能知道非静态变量在哪?
这样说能明白吗?
这里要从static关键字说起
static修饰的静态变量/方法,是独立于对象之外的,他只在类第一次加载时进行初始化。
static具有独立的内存空间且只分配一次。
非静态变量为什么不能再静态方法中引用呢?
通俗一点说非静态变量在对象没有创立时,是没有初始化的(内存空间没有),所以你在静态方法中引用,静态方法在初始化的时候,并不能知道非静态变量在哪?
这样说能明白吗?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询