Contextos de declaración y niveles de acceso predeterminados (Visual Basic)

En este tema se describen qué tipos de Visual Basic se pueden declarar dentro de otros tipos y qué niveles de acceso se establecen de manera predeterminada si no se especifican.

Niveles del contexto de declaración

El contexto de declaración de un elemento de programación es la región de código en la que se declara. A menudo suele ser otro elemento de programación, que se denomina elemento contenedor.

Los niveles de contexto de declaración son los siguientes:

  • Nivel de espacio de nombres — dentro de un archivo de código fuente o espacio de nombres, pero no dentro de una clase, estructura, módulo o interfaz

  • Nivel de módulo — dentro de una clase, estructura, módulo o interfaz, pero no dentro de un procedimiento o bloque

  • Nivel de procedimiento — dentro de un procedimiento o bloque (como If o For)

En la tabla siguiente se muestran los niveles de acceso predeterminados para los distintos elementos de programación declarados, en función de sus contextos de declaración.

Elemento declarado

Nivel de espacio de nombres

Nivel de módulo

Nivel de procedimiento

Variable (Instrucción Dim (Visual Basic))

No se permite

Private (Public en Structure, no se permite en Interface)

Public

Constante (Instrucción Const (Visual Basic))

No se permite

Private (Public en Structure, no se permite en Interface)

Public

Enumeración (Instrucción Enum (Visual Basic))

Friend

Public

No se permite

Clase (Instrucción Class (Visual Basic))

Friend

Public

No se permite

Estructura (Structure (Instrucción))

Friend

Public

No se permite

Módulo (Module (Instrucción))

Friend

No se permite

No se permite

Interfaz (Instrucción Interface (Visual Basic))

Friend

Public

No se permite

Procedimiento (Function (Instrucción, Visual Basic), Sub (Instrucción, Visual Basic))

No se permite

Public

No se permite

Referencia externa (Declare (Instrucción))

No se permite

Public (no se permite en Interface)

No se permite

Operador (Operator (Instrucción))

No se permite

Public (no se permite en Interface o Module)

No se permite

Propiedad (Property (Instrucción))

No se permite

Public

No se permite

Propiedad predeterminada (Default (Visual Basic))

No se permite

Public (no se permite en Module)

No se permite

Evento (Event (Instrucción))

No se permite

Public

No se permite

Delegado (Delegate (Instrucción))

Friend

Public

No se permite

Para obtener más información, vea Niveles de acceso en Visual Basic.

Vea también

Referencia

Friend (Visual Basic)

Private (Visual Basic)

Public (Visual Basic)