liuzhiwei
2015-12-26 10:19
allScore 是非静态成员,在静态方法main中,为什么可以直接调用allScore,如:
System.out.println("总分:" + allScore)
这里的allScore是局部变量 只可以在此main方法中使用
首先得知道什么是成员变量。成员变量,又称全局变量,是在类的变量部分中定义的变量,和类的方法处于同一层次。静态变量和普通成员(或者说非静态)变量是对立的,他们都属于成员变量。而方法中的变量不属于成员变量,就是为了表达一些东西的代号,就是普通的变量(可以认为是局部变量)。这里的allScore不是成员变量,所以谈不上是非静态,而是一个只能在这个方法中使用的局部的变量。
allScore 是在main方法中 在自己的做用域内当然可以使用了,静态方法中不能调用非静态成员,你要搞明白 作用域 什么是作用域 就是{} 括起来的东西,就像的的心肝脾胃肾你自己的东西你当然可以用了
你的allScore 是在方法内定义的吗?不看源码没法判断你的情况
Java入门第二季 升级版
530646 学习 · 6091 问题
相似问题