如何在 C# 中从同名的内部类访问外部类的字段?(嵌套类)

本文关键字:字段 外部 嵌套 访问 内部类 | 更新日期: 2023-09-27 18:36:04

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

例如-

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
        }
    }
}

我如何访问它,请帮助...

谢谢。

如何在 C# 中从同名的内部类访问外部类的字段?(嵌套类)

您正在寻找

class OuterClass
{
    static int Number;
    class InnerClass
    {
        public InnerClass(int Number)
        {
            OuterClass.Number = Number;   
        }
    }
}

由于它是 static ,您可以通过编写以下内容来访问它:OuterClass.Number = Number;

您可以按以下行执行某些操作:

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

}

这样,您始终使用对父类的引用创建内部类,并可以使用 mainclass 调用它。