发展历程 什么是嵌套类型? -技术百科的定义

什么是嵌套类型? -技术百科的定义

目录:

Anonim

定义-嵌套类型是什么意思?

在C#中,嵌套类型是在现有类或结构中声明的类型。 与直接在编译单元或命名空间中声明的非嵌套类型不同,嵌套类型是在包含(或外部)类型的范围内定义的。


嵌套类型仅在其范围,可见性和生存期在包含的类型内结束而不暴露于其他类型的情况下使用。 集合类型内的枚举器成员通常实现为嵌套类型,以遍历集合。 作为迭代器,枚举器允许使用相同的客户端逻辑来迭代集合,而与数据集合的基础结构无关。


通常,嵌套类型仅在逻辑上属于包含类型的情况下使用。 当包含类型完全依赖于嵌套类型时可以实现该方法,这有助于封装包含类型的实现细节。 它通常用于直接使用具有嵌套类型的实现的包含类型而无需实例化其嵌套类型的情况。

技术百科解释了嵌套类型

可以从程序中的任何位置访问嵌套类型,方法是使用公共级别的可访问性进行声明并使用其完全限定的名称。


例如,AddressInformation可以是在Employee类型内声明的嵌套类型,并且可以使用其完全限定名称Employee.AddressInformation进行访问。


嵌套类型具有以下关键属性:

  • 它可以具有不同形式的可访问性,包括私有,公共,受保护,受保护的内部和内部。 默认情况下,它具有私有可访问性。
  • 它可以访问包含类型的私有和受保护成员,包括任何继承的私有和受保护成员。 要访问这些成员,必须通过其构造函数将包含类型的实例传递给嵌套类型。
  • 它允许多个嵌套级别,从而允许在另一个嵌套类中定义一个嵌套类的代码块。
  • 它可以从包含类型继承,也可以被继承。
  • 嵌套类型的私有成员对包含类型不可见。

当必须由客户端代码公开公开以进行实例化或在客户端代码中直接引用嵌套类型时,不应使用嵌套类型。 它不能代替逻辑分组构造的名称空间。

什么是嵌套类型? -技术百科的定义