我很困惑,怎么能这样写...它从另一个实例创建一个实例
st.new FirstLevel();] >>
public class ShadowTest {
public int x = 0;
class FirstLevel {
public int x = 1;
void methodInFirstLevel(int x) {
System.out.println("x = " + x);
System.out.println("this.x = " + this.x);
System.out.println("ShadowTest.this.x = " + ShadowTest.this.x);
}
}
public static void main(String... args) {
ShadowTest st = new ShadowTest();
ShadowTest.FirstLevel fl = st.new FirstLevel();
fl.methodInFirstLevel(23);
ShadowTest.FirstLevel mali = st.new FirstLevel();
}
}
我很困惑,怎么会这样写...它从另一个实例st.new FirstLevel()创建一个实例;公共类ShadowTest {public int x = 0;类...
您可以创建非静态内部类的许多新实例您可以阅读有关内部类的“ Think in Java Eckel”