Freigeben über


Unterschiede zwischen Eigenschaften und Variablen in Visual Basic

Aktualisiert: November 2007

Variablen und Eigenschaften stellen jeweils Werte dar, auf die Sie zugreifen können. Es gibt jedoch Unterschiede in Bezug auf Speicherung und Implementierung.

Variablen

Eine Variable entspricht direkt einer Speicheradresse. Für die Definition einer Variablen reicht eine Deklarationsanweisung. Eine Variable kann eine lokale Variable sein, die innerhalb einer Prozedur definiert ist und nur in dieser Prozedur verfügbar ist. Es kann sich aber auch um eine Membervariable handeln, die in einem Modul, einer Klasse oder einer Struktur definiert ist, jedoch nicht innerhalb einer Prozedur. Eine Membervariable wird auch als Feld bezeichnet.

Eigenschaften

Eine Eigenschaft ist ein Datenelement, das in einem Modul, einer Klasse oder einer Struktur definiert ist. Sie definieren eine Eigenschaft mit einem Codeblock, der zwischen den Anweisungen Property und End Property steht. Der Codeblock enthält eine Get-Prozedur, eine Set-Prozedur oder beides. Diese Prozeduren werden als Eigenschaftenprozeduren oder Eigenschaftenaccessoren bezeichnet. Prozeduren können nicht nur den Wert der Eigenschaft abrufen oder speichern, sondern auch benutzerdefinierte Aktionen ausführen, etwa einen Zugriffszähler aktualisieren.

Unterschiede

In der folgenden Tabelle werden einige wichtige Unterschiede zwischen Variablen und Eigenschaften dargestellt.

Unterscheidungsmerkmal

Variable

Eigenschaft

Deklaration

Einzelne Deklarationsanweisung

Reihe von Anweisungen in einem Codeblock

Implementierung

Einzelner Speicherort

Ausführbarer Code (Eigenschaftenprozeduren)

Speicherung

Direkt dem Wert der Variablen zugeordnet

I. d. R. interne Speicherung, nicht verfügbar außerhalb der enthaltenden Klasse oder des Moduls der Eigenschaft

Der Wert der Eigenschaft muss nicht unbedingt als gespeichertes Element1 existieren.

Ausführbarer Code

Keiner

Muss wenigstens eine Prozedur enthalten

Lese- und Schreibzugriff

Lese-/Schreibzugriff oder schreibgeschützt

Lese-/Schreibzugriff, schreibgeschützt oder lesegeschützt

Benutzerdefinierte Aktionen (neben Akzeptieren oder Zurückgeben eines Werts)

Nicht möglich

Können beim Festlegen oder Abrufen des Eigenschaftenwerts ausgeführt werden.

1 Im Unterschied zu einer Variablen entspricht der Wert einer Eigenschaft eventuell nicht direkt einem bestimmten Speicherelement. Das Speicherelement ist aus praktischen oder sicherheitstechnischen Gründen unter Umständen in mehrere Abschnitte aufgeteilt, oder der Wert wird möglicherweise verschlüsselt gespeichert. In diesen Fällen setzt die Get-Prozedur die Abschnitte zusammen oder entschlüsselt den gespeicherten Wert, während die Set-Prozedur den neuen Wert verschlüsselt oder das Speicherelement in mehrere Abschnitte aufteilt. Ein Eigenschaftenwert, wie beispielsweise die Tageszeit, kann begrenzte Lebensdauer haben. In diesem Fall würde er von der Get-Prozedur spontan berechnet, sobald Sie auf die Eigenschaft zugreifen.

Siehe auch

Aufgaben

Gewusst wie: Erstellen einer Eigenschaft

Gewusst wie: Deklarieren einer Eigenschaft mit gemischten Zugriffsebenen

Gewusst wie: Aufrufen einer Eigenschaftenprozedur

Gewusst wie: Deklarieren und Aufrufen einer Standardeigenschaft in Visual Basic

Gewusst wie: Ablegen eines Werts in eine Eigenschaft

Gewusst wie: Abrufen eines Werts aus einer Eigenschaft

Konzepte

Property-Prozeduren

Parameter und Argumente von Prozeduren

Referenz

Property-Anweisung

Dim-Anweisung (Visual Basic)