除了在名称空间中定义类型(如类)之外,还可以在其他类中定义它们。如果这么做,就可以在定义中使用各种访问修饰符,而不仅是public和internal,也可以使用new关键字来隐藏继承于基类的类型定义。
例如,以下代码定义了 MyClass,也定义了一个嵌套的类myNestedClass:
public class MyClass
{
public class MyNestedClass
{
public int NestedClassField;
}
}
如果要在MyClass的外部实例化myNestedClass,就必须限定名称,例如:
MyClass.MyNestedClass myObj = new MyClass.MyNestedClass();
但是,如果嵌套的类声明为私有,就不能这么做。这个功能主要用来定义对于其包含类来说是私有的类,这样,名称空间中的其他代码就不能访问它。使用该功能的另一个原因是嵌套类可以访问其包含类的私有和受保护成员。接下来的示例演示了嵌套类。
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>