Compartir a través de


Instrucciones de uso de tipos anidados

Los tipos anidados son tipos definidos dentro del ámbito de otro tipo. Los tipos anidados resultan muy útiles para encapsular los detalles de implementación de un tipo, como un enumerador en una colección, ya que pueden tener acceso al estado privado.

Los tipos anidados públicos se deben utilizar en contadas ocasiones. Utilícelos sólo en situaciones en las que se cumplan las condiciones siguientes:

  • El tipo anidado (tipo interno) pertenece de forma lógica al tipo contenedor (tipo externo).

En los ejemplos siguientes se muestra cómo definir tipos con y sin tipos anidados:

' With nested types.
ListBox.SelectedObjectCollection 
' Without nested types.
ListBoxSelectedObjectCollection  

' With nested types.
RichTextBox.ScrollBars 
' Without nested types.
RichTextBoxScrollBars 
[C#]
// With nested types.
ListBox.SelectedObjectCollection 
// Without nested types.
ListBoxSelectedObjectCollection  

// With nested types.
RichTextBox.ScrollBars 
// Without nested types.
RichTextBoxScrollBars 

No utilice tipos anidados si se cumplen las siguientes condiciones:

  • Las instancias del tipo deben crearse mediante el código de cliente. Si un tipo tiene un constructor público, probablemente no debería anidarse. La razón tras esta directriz es que si se pueden crear instancias de un tipo anidado, esto indicaría que el tipo ocupa un lugar en su propia biblioteca. Se puede crear, usar y destruir sin usar el tipo externo; por lo tanto, no debería estar anidado. Un tipo interno no se debería reutilizar ampliamente fuera del tipo externo sin una relación con el tipo externo.
  • Las referencias al tipo se declaran normalmente en el código de cliente.

Vea también

Instrucciones de diseño para programadores de bibliotecas de clases