我知道,这是一个非常基本的话题,所以如果是一个重复的问题,请提供参考.
比如,有以下代码:
public class Point {
int x = 42;
int y = getX();
int getX() {
return x;
}
public static void main (String s[]) {
Point p = new Point();
System.out.println(p.x + "," + p.y);
}
}
Run Code Online (Sandbox Code Playgroud)
它输出: 42,42
但是如果我们改变变量外观的顺序:
public class Point {
int y = getX();
int x = 42;
int getX() {
return x;
}
public static void main (String s[]) {
Point p = new Point();
System.out.println(p.x + "," + p.y);
}
}
Run Code Online (Sandbox Code Playgroud)
它输出: 42,0
我理解在第二种情况下,情况可以描述为:"好的,我不知道返回的x值是什么,但是有一些价值".我不完全理解的是,在没有看到x及其价值的情况下,可以看到x.这是编译时间和运行时间的问题吗?提前致谢.
| 归档时间: |
|
| 查看次数: |
175 次 |
| 最近记录: |