【发布时间】:2016-06-08 08:59:34
【问题描述】:
public class MainClass {
static final int i = GetI();
static int j = 9;
public static void main(String[] args) {
System.out.println("i value : " + i);
}
static int GetI() {
return j;
}
}
上面的代码打印 'i value : 0'
1. 但是,该方法应该返回 j 的值,即 9,因此 i 的值将是 9。
2.如果我们将变量j设为final,那么输出将是'i value : 9',这很好。
可能是什么原因?
谢谢。
【问题讨论】:
标签: variables static instance final