(原创)c#学习笔记10--定义类成员02--类成员的其他议题03--嵌套的类型定义

10.2.3  嵌套的类型定义

  除了在名称空间中定义类型之外,还可以在其他类中定义这些类。如果这么做,就可以在定义中使用各种访问修饰符,而不仅仅是public和internal,也可以使用new关键字隐藏继承于基类的类型定义。例如,下面的代码定义了MyClass,也定义了一个嵌套的类MyNestedClass:

public class MyClass {
    public class MyNestedClass {
        public int NestedClassField;
    }
}

  如果要在MyClass的外部实例化MyNestedClass,就必须限定名称,例如:

MyClass.MyNestedClass myObj = new MyClass.MyNestedClass();

  但是,如果嵌套的类声明为私有,或者声明为其他与执行该实例化的代码不兼容的访问级别,就不能这么做。这个功能主要用于定义对于其包含类来说是私有的类,这样,名称空间中的其他代码就不能访问它。

原文地址:https://www.cnblogs.com/wodehao0808/p/4961367.html