Share via


Cómo: Controlar la disponibilidad de una variable (Visual Basic)

Para controlar la disponibilidad de una variable, especifique su nivel de acceso. El nivel de acceso determina qué código tiene permiso para leer o escribir en la variable.

  • Las variables miembro (definidas en el nivel de módulo y fuera de cualquier procedimiento) tienen como valor predeterminado el acceso público, lo que significa que cualquier código que pueda verlos puede acceder a ellos. Para cambiarlo, especifique un modificador de acceso.

  • Las variables locales (definidas dentro de un procedimiento) tienen acceso público nominalmente, aunque solopuede acceder a ellas el código dentro de su procedimiento. No se puede cambiar el nivel de acceso de una variable local, pero puede cambiar el nivel de acceso del procedimiento que lo contiene.

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

Acceso privado y público

Para que una variable sea accesible solo desde su módulo, clase o estructura

  1. Coloque la instrucción Dim para la variable dentro del módulo, la clase o la estructura, pero fuera de cualquier procedimiento.

  2. Incluya la palabra clave Private en la instrucción Dim.

    Puede leer o escribir en la variable desde cualquier lugar dentro del módulo, la clase o la estructura, pero no desde fuera.

Para que una variable sea accesible desde cualquier código que pueda verla

  1. En el caso de una variable de miembro, coloque la instrucción Dim para la variable dentro de un módulo, la clase o la estructura, pero fuera de cualquier procedimiento.

  2. Incluya la palabra clave Public en la instrucción Dim.

    Puede leer o escribir en la variable desde cualquier código que interopere con el ensamblado.

O bien

  1. Para una variable local, coloque la instrucción Dim para la variable dentro de un procedimiento.

  2. No incluya la palabra clave Public en la instrucción Dim.

    Puede leer o escribir en la variable desde cualquier lugar dentro del procedimiento, pero no desde fuera.

Acceso protegido y de confianza

Puede limitar el nivel de acceso de una variable a su clase y a cualquier clase derivada, o a su ensamblado. También puede especificar la unión de estas limitaciones, que permite el acceso desde el código en cualquier clase derivada o en cualquier otro lugar del mismo ensamblado. Para especificar esta unión, combine las palabras clave Protected y Friend en la misma declaración.

Para que una variable sea accesible solo desde dentro de su clase y cualquier clase derivada

  1. Coloque la instrucción Dim para la variable dentro de una clase, pero fuera de cualquier procedimiento.

  2. Incluya la palabra clave Protected en la instrucción Dim.

    Puede leer o escribir en la variable desde cualquier lugar dentro de la clase, así como desde dentro de cualquier clase derivada de ella, pero no desde fuera de ninguna clase de la cadena de derivación.

Para que una variable sea accesible solo desde dentro del mismo ensamblado

  1. Coloque la instrucción Dim para la variable dentro de un módulo, la clase o la estructura, pero fuera de cualquier procedimiento.

  2. Incluya la palabra clave Friend en la instrucción Dim.

    Puede leer o escribir en la variable desde cualquier lugar dentro del módulo, la clase o la estructura, así como desde cualquier código del mismo ensamblado, pero no desde fuera del ensamblado.

Ejemplo

En el ejemplo siguiente se muestran declaraciones de variables con niveles de acceso Public, Protected, Friend, Protected Friend y Private. Tenga en cuenta que, cuando la instrucción Dim especifica un nivel de acceso, no es necesario incluir la palabra clave Dim.

Public Class classForEverybody  
Protected Class classForMyHeirs  
Friend stringForThisProject As String  
Protected Friend stringForProjectAndHeirs As String  
Private numberForMeOnly As Integer  

Seguridad de .NET Framework

Cuanto más restrictivo sea el nivel de acceso de una variable, menor será la probabilidad de que el código malintencionado pueda usarlo incorrectamente.

Consulte también