在Java定义一个数组,然后同一个类中的方法想调用这个数组结果报错

java编译报错无法从静态上下文中引用非静态变量publicclassTestArray{inta[]={1,2,3,4}publicstaticvoidmain(Str... java编译报错无法从静态上下文中引用非静态变量
public class TestArray{
int a[] = {1,2,3,4}
public static void main(String args[]){

for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}

}
}
这个是怎么会事儿?
展开
 我来答
kaixingui2012
推荐于2016-07-12 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6374万
展开全部

你的main方法是静态的,而int a[]是类成员,非静态成员

java中,静态方法不能引用非静态变量

修改方法一:

加上static修饰,如:

static int a[] = {1,2,3,4} ;

修改方法二:

把定义 写到文里面去

   public static void main(String args[]){
    int a[] = {1,2,3,4} ; //写到这里就可以了
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式