嵌套类的范围

时间:2010-06-03 20:41:49

标签: c#

如果我有一个嵌套类,那么拥有的类中是否存在所拥有的类?

例如:

public class OwningClass 
{

    int randomVariable = 1;

    public void MakingMethod()
    {
        OwnedClass owned = new OwnedClass();
        owned.SomeMethod();
    }

    private class OwnedClass
    {
        public void SomeMethod()
        {
            // Is anything from OwningClass available here?
        }

    }

}

3 个答案:

答案 0 :(得分:6)

您的嵌套类中可以使用拥有类的任何“静态”。

如果您在内部类的某个方法中拥有拥有类的实例,那么您也可以访问其私有成员。

答案 1 :(得分:3)

嵌套类相对于它的父类唯一改变的是可访问性。嵌套类可以访问包含类型的私有成员。

答案 2 :(得分:1)

除非您在Owned Class的构造函数中或通过SomeMethod of OwnedClass传入Owning类的引用。

享受!