|
1
2
3
4
5
6
7
8
|
class MyClass{ void method() { System.out.println(myvar); } String
myvar = "var
value";} |
|
1
2
3
4
5
|
class MyClass
{ int method()
{return n;
} int m
= method(); int n
= 1;} |
|
1
|
System.out.println(new MyClass().method()); |
|
1
|
System.out.println(new MyClass().m); |
|
1
2
3
4
5
|
class MyClass
{ int method()
{return n;
} int n
= 1; int m
= method();} |
|
1
|
System.out.println(new MyClass().m); |
|
1
2
3
|
MyClass
myClass = new MyClass();System.out.println(myClass.n); //
输出1System.out.println(myClass.m); //
仍然输出0 |
|
1
2
3
4
5
|
class MyClass
{ static int method()
{return n;
} static int m
= method(); //
直接访问m,仍然会输出0 static int n
= 1;} |
本文深入探讨了Java中向前引用的概念及其工作原理,包括如何在类、接口、方法、变量定义前使用它们,并解释了这可能导致的初始化顺序问题。通过具体代码示例,展示了如何正确理解和应用向前引用,确保程序的正确执行。
165

被折叠的 条评论
为什么被折叠?



