新手求教
疯子霆 2018-11-19 06:33:06 package com.lzw;
import static java.lang.System.out;
import java.util.Random;
class Test{
int i=0;
}
public class FinalData {
static Random rand =new Random();
private final int VALUE_1=9;
private static final int VALUE_2=10;
private final Test test=new Test();
private final Test test2=new Test();
private final int[]a={1,2,3,4,5,6};
private final int i4=rand.nextInt(20);
private static final int i5=rand.nextInt(20);
public String toString(){
return i4+""+i5+"";
}
public static void main(String args[]){
FinalData data=new FinalData();
data.test=new Test();
data.VALUE_2++;
data.test2=new Test();
for(int i=0;i<data.a.length;i++)
{
a[i]=9;
}
out.println(data);
out.println("data2");
out.println(new FinalData());
out.println(data);
}
}
Exception in thread "main" java.lang.Error: 无法解析的编译问题:
不能对非静态字段 a 进行静态引用
at com.lzw.FinalData.main(FinalData.java:26)
-----------------------------------------------------------------
问题是,我在private final int[]a={1,2,3,4,5,6};加入关键字是static 后 private final static int[]a={1,2,3,4,5,6};
系统出现 Exception in thread "main" java.lang.Error: 无法解析的编译问题:
不能对终态字段 FinalData.test 赋值
不能对终态字段 FinalData.VALUE_2 赋值
不能对终态字段 FinalData.test2 赋值
at com.lzw.FinalData.main(FinalData.java:21)
我不知道该怎么办了!~ 请大神指教