
[英]How to initialize each element of an array with a specific value at declaration?
[英]Initialize value of variable while declaration [duplicate]
这个问题已经在这里有了答案:
有人可以解释一下为什么下面的程序产生10和0吗? 我期望10和10 ;
public final class Testing {
static int j = function1();
static int i = 10;
public static void main(String[] args) {
System.out.println(i);
System.out.println(j);
}
public static int function1() {
return i;
}
}
static
变量按照它们在类源代码中出现的顺序进行初始化。 因此,当初始化j
时,默认情况下i
仍为0
,因此function1
返回0
且j
初始化为0
。
将j
初始化为0
,将i
初始化为10
,并且您的main
菜单打印10
和0
。
接下来, 以文本顺序执行类的类变量初始化器和静态初始化器,或者接口的字段初始化器,就好像它们是单个块一样 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.