Diferencias entre propiedades y variables en Visual Basic
Actualización: noviembre 2007
Tanto las variables como las propiedades representan valores a los que puede tener acceso. Sin embargo, existen diferencias en su almacenamiento e implementación.
Variables
Una variable se corresponde directamente con una ubicación de la memoria. Una variable se define con una única instrucción de declaración. Una variable puede ser una variable local, si está definida dentro de un procedimiento y sólo está disponible en dicho procedimiento, o puede ser una variable miembro, si se define en un módulo, una clase o una estructura, pero no dentro de un procedimiento. Una variable miembro también se denomina campo.
Propiedades
Una propiedad es un elemento de datos que se define en un módulo, una clase o una estructura. Una propiedad se define con un bloque de código comprendido entre las instrucciones Property y End Property. El bloque de código contiene un procedimiento Get, un procedimiento Set o ambos procedimientos. Estos procedimientos se denominan procedimientos de propiedades o descriptores de acceso de propiedades. Además de recuperar o almacenar el valor de una propiedad, también pueden llevar a cabo acciones personalizadas, como actualizar un contador de acceso.
Diferencias
En la tabla siguiente se muestran algunas diferencias importantes que existen entre las variables y propiedades.
Punto de diferencia |
Variable |
Propiedad |
---|---|---|
Declaración |
Única instrucción de declaración |
Serie de instrucciones en un bloque de código |
Implementación |
Única ubicación de almacenamiento |
Código ejecutable (procedimientos de propiedades) |
Almacenamiento |
Directamente asociado con el valor de una variable |
Normalmente dispone de un almacén interno que no está disponible fuera de la clase o el módulo que contiene la propiedad El valor de la propiedad podría existir o no como un elemento almacenado 1 |
Código ejecutable |
Ninguno |
Debe tener al menos un procedimiento |
Acceso de lectura y escritura |
Acceso de lectura y escritura o de sólo lectura |
Acceso de lectura y escritura, de sólo lectura o de sólo escritura |
Acciones personalizadas (además de aceptar o devolver un valor) |
No es posible |
Se pueden llevar a cabo como parte del proceso de configuración o de recuperación del valor de una propiedad |
1 A diferencia de una variable, es posible que el valor de una propiedad no se corresponda directamente con un único elemento de almacenamiento. El almacenamiento podría dividirse en partes por motivos de comodidad o seguridad, o el valor podría almacenarse en un formato cifrado. En estos casos, el procedimiento Get ensamblaría las partes o descifraría el valor almacenado, y el procedimiento Set cifraría el nuevo valor o lo dividiría en el almacenamiento fundamental. El valor de una propiedad podría ser efímero, como una hora del día, en cuyo caso el procedimiento Get lo calcularía sobre la marcha cada vez que se obtuviera acceso a la propiedad.
Vea también
Tareas
Cómo: Declarar una propiedad con niveles de acceso mixtos
Cómo: Llamar a un procedimiento de propiedad
Cómo: Declarar y llamar a una propiedad predeterminada en Visual Basic
Cómo: Establecer un valor en una propiedad
Cómo: Obtener un valor de una propiedad
Conceptos
Argumentos y parámetros de procedimiento