您的位置:首页 > 编程语言 > C#

C#嵌套类型

2016-07-22 16:19 337 查看
在类或结构内部定义的类型称为嵌套类型。例如:

class Container
{
class Nested
{
Nested() { }
}
}


不管外部类型是类还是结构,嵌套类型均默认为 private,但是可以设置为 public、protected internal、protected、internal 或 private。在上面的示例中,Nested 对外部类型是不可访问的,但可以设置为 public,如下所示:

class Container
{
public class Nested
{
Nested() { }
}
}


嵌套类型(或内部类型)可访问包含类型(或外部类型)。若要访问包含类型,请将其作为构造函数传递给嵌套类型。例如:

public class Container
{
public class Nested
{
private Container parent;

public Nested()
{
}
public Nested(Container parent)
{
this.parent = parent;
}
}
}


嵌套类型可以访问其包含类型可以访问的所有成员。它可以访问包含类型的私有成员和受保护成员(包括所有继承的受保护成员)。

在前面的声明中,类 Nested 的完整名称为 Container.Nested。这是用来创建嵌套类新实例的名称,如下所示:

Container.Nested nest = new Container.Nested();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: