Freigeben über


Unterschiede zwischen Eigenschaften und Variablen in Visual Basic

Variablen und Eigenschaften stellen beide Werte dar, auf die Sie zugreifen können. Es gibt jedoch Unterschiede bei Speicher und Implementierung.

Variablen

Eine Variable entspricht direkt einem Speicherort. Sie definieren eine Variable mit einer einzelnen Deklarationsanweisung. Eine Variable kann eine lokale Variable sein, die innerhalb einer Prozedur definiert ist und nur innerhalb dieser Prozedur verfügbar ist, oder es kann sich um eine Membervariable handeln, die in einem Modul, einer Klasse oder einer Struktur, aber nicht innerhalb einer Prozedur definiert ist. Eine Membervariable wird auch als Feld bezeichnet.

Eigenschaften

Eine Eigenschaft ist ein Datenelement, das für ein Modul, eine Klasse oder eine Struktur definiert ist. Sie definieren eine Eigenschaft mit einem Codeblock zwischen den Anweisungen Property und End Property. Der Codeblock enthält eine Get Prozedur, eine Set Prozedur oder beides. Diese Prozeduren werden als Eigenschaftsprozeduren oder Eigenschaftsaccessoren bezeichnet. Zusätzlich zum Abrufen oder Speichern des Eigenschaftswerts können sie auch angepasste Aktionen ausführen, wie das Aktualisieren eines Zugriffszählers.

Unterschiede

In der folgenden Tabelle sind einige wichtige Unterschiede zwischen Variablen und Eigenschaften aufgeführt.

Differenzpunkt Variable Eigentum
Erklärung Einzelne Deklaration Reihe von Anweisungen in einem Codeblock
Implementierung Einzelner Speicherort Ausführbarer Programmcode (Eigenschaftsprozeduren)
Lagerung Direkt mit dem Wert der Variablen verknüpft Weist in der Regel internen Speicher auf, der außerhalb der Klasse oder des Moduls der Eigenschaft nicht verfügbar ist

Der Wert der Eigenschaft ist möglicherweise oder nicht als gespeichertes Element 1 vorhanden.
Ausführbarer Code Nichts Mindestens eine Prozedur muss vorliegen
Lese- und Schreibzugriff Lese-/Schreibzugriff oder schreibgeschützt Lese-/Schreibzugriff, schreibgeschützt oder lesegeschützt
Benutzerdefinierte Aktionen (zusätzlich zum Annehmen oder Zurückgeben eines Werts) Nicht möglich Kann beim Festlegen oder Abrufen des Eigenschaftswerts ausgeführt werden

1 Im Gegensatz zu einer Variablen entspricht der Wert einer Eigenschaft möglicherweise nicht direkt einem einzelnen Speicherelement. Der Speicher kann aus Gründen der Einfachheit oder Sicherheit in Teile aufgeteilt werden, oder der Wert wird in einer verschlüsselten Form gespeichert. In diesen Fällen würde das Get Verfahren die Teile zusammenstellen oder den gespeicherten Wert entschlüsseln, und die Set Prozedur würde den neuen Wert verschlüsseln oder in den Bestandteilspeicher aufteilen. Ein Eigenschaftswert kann kurzlebig sein, z. B. die Tageszeit. In diesem Fall berechnet die Get-Prozedur ihn dynamisch bei jedem Zugriff auf die Eigenschaft.

Siehe auch