要从另一个实例创建一个实例吗?

问题描述 投票:0回答:1

我很困惑,怎么能这样写...它从另一个实例创建一个实例

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;类...

java inner-classes
1个回答
0
投票

您可以创建非静态内部类的许多新实例您可以阅读有关内部类的“ Think in Java Eckel”

© www.soinside.com 2019 - 2024. All rights reserved.