Condividi tramite


Differenze tra proprietà e variabili in Visual Basic

Le variabili e le proprietà rappresentano entrambi i valori a cui è possibile accedere. Esistono tuttavia differenze nell'archiviazione e nell'implementazione.

Variabili

Una variabile corrisponde direttamente a una posizione di memoria. Si definisce una variabile con una singola istruzione di dichiarazione. Una variabile può essere una variabile locale, definita all'interno di una routine e disponibile solo all'interno di tale routine oppure può essere una variabile membro, definita in un modulo, una classe o una struttura, ma non all'interno di alcuna routine. Una variabile membro è detta anche campo.

Proprietà

Una proprietà è un elemento dati definito in un modulo, una classe o una struttura. Si definisce una proprietà con un blocco di codice tra le istruzioni Property e End Property. Il blocco di codice contiene una Get routine, una Set routine o entrambe. Queste procedure sono denominate routine di proprietà o funzioni di accesso alle proprietà. Oltre a recuperare o archiviare il valore della proprietà, è anche possibile eseguire azioni personalizzate, ad esempio l'aggiornamento di un contatore di accesso.

Differenze

La tabella seguente illustra alcune importanti differenze tra variabili e proprietà.

Punto di differenza Variabile Proprietà
Dichiarazione Istruzione di dichiarazione singola Serie di istruzioni in un blocco di codice
Implementazione Posizione di archiviazione singola Codice eseguibile (routine delle proprietà)
Immagazzinamento Direttamente associato al valore della variabile In genere l'archiviazione interna non è disponibile all'esterno della classe o del modulo che contiene la proprietà

Il valore della proprietà potrebbe o non esistere come elemento archiviato 1
Codice eseguibile Nessuno Deve avere almeno una procedura
Accesso in lettura e scrittura Lettura/scrittura o sola lettura Lettura/scrittura, sola lettura o sola scrittura
Azioni personalizzate (oltre ad accettare o restituire un valore) Non possibile Può essere eseguita come parte dell'impostazione o del recupero del valore della proprietà

1 A differenza di una variabile, il valore di una proprietà potrebbe non corrispondere direttamente a un singolo elemento di archiviazione. L'archiviazione potrebbe essere suddivisa in parti per praticità o sicurezza oppure il valore potrebbe essere archiviato in un formato crittografato. In questi casi la Get procedura assembla i pezzi o decrittografa il valore archiviato e la Set routine crittografa il nuovo valore o lo suddivide nella risorsa di archiviazione costituente. Un valore della proprietà potrebbe essere temporaneo, ad esempio l'ora del giorno, nel qual caso la Get routine lo calcolerebbe in tempo reale ogni volta che si accede alla proprietà.

Vedere anche