关于类初始化时非法向前引用变量的问题
1 public class Test { 2 static { 3 i = 0;//给变量赋值可以正常编译通过 4 System.out.println(i);//这句编译器会提示"非法前向引用" 5 } 6 static int i = 0; 7 public static void main( String args[] ) { 8 9 } 10 }
静态语句块中只能访问到定义在静态语句块之前的变量,定义在它之后的变量,
在前面的静态语句块可以赋值,但是不能访问!!!