0

如果参数名称与外部类的字段名称相同,如何从内部类访问外部类的字段?

例如 -

class OuterClass
{
    static int Number;

    class InnerClass
    {
        public InnerClass(int Number)
        {
            Number = Number;   // This is not correct
        }
    }
}

所以我尝试如下 -

class OuterClass
{
    static int Number;

    class InnerClass
    {
        public InnerClass(int Number)
        {
            this.this.Number = Number;   // Gives compiler error
        }
    }
}

怎么访问啊,求大神帮忙...

谢谢。

4

3 回答 3

1

既然是static,您可以通过编写来访问它:OuterClass.Number = Number;

于 2013-10-20T17:59:03.137 回答
1

你正在寻找

class OuterClass
{
    static int Number;

    class InnerClass
    {
        public InnerClass(int Number)
        {
            OuterClass.Number = Number;   
        }
    }
}
于 2013-10-20T17:59:10.880 回答
0

您可以按照以下方式执行操作:

Public InnerClass
{
    private MainClass _mainclass;

    public InnerClass(MainClass mainclass)
    {
         this._mainclass = mainclass;
    }


}

这样,您始终可以使用对父类的引用来创建内部类,并且可以使用mainclass.

于 2013-10-20T17:59:20.287 回答