静态变量的声明和赋值是分开的,变量名的声明先加载,赋值是按照代码顺序执行。java
public class Test { static { NAME = "xing"; } private static String NAME = "tong"; private static String namee = "wang" + NAME; public static void main(String[] args){ System.out.println(namee); } }
执行结果:wangtongcode
public class Test { private static String NAME = "tong"; static { NAME = "xing"; } private static String namee = "wang" + NAME; public static void main(String[] args){ System.out.println(namee); } }
执行结果:wangxingclass
public class Test { private static String NAME = "tong"; private static String namee = "wang" + NAME; static { NAME = "xing"; } public static void main(String[] args){ System.out.println(namee); } }
执行结果:wangtong变量