【发布时间】:2014-09-26 14:32:48
【问题描述】:
我正在阅读 Kathy 和 Bert SCJP 1.6 并遇到以下代码:
class Bar {
int barNum = 28;
}
class Foo {
Bar myBar = new Bar();
void changeIt(Bar myBar) {
myBar.barNum = 99;
System.out.println("myBar.barNum in changeIt is " + myBar.barNum);
myBar = new Bar();
myBar.barNum = 420;
System.out.println("myBar.barNum in changeIt is now " + myBar.barNum);
}
public static void main (String [] args) {
Foo f = new Foo();
System.out.println("f.myBar.barNum is " + f.myBar.barNum);
f.changeIt(f.myBar);
System.out.println("f.myBar.barNum after changeIt is "
+ f.myBar.barNum);
}
}
虽然是在阴影变量的主题下,但我无法理解如何在 main() 方法(静态)中引用非静态变量 myBar?
【问题讨论】:
标签: java static non-static