Skillnader mellan egenskaper och variabler i Visual Basic
Variabler och egenskaper representerar båda värden som du kan komma åt. Det finns dock skillnader i lagring och implementering.
Variabler
En variabel motsvarar direkt en minnesplats. Du definierar en variabel med en enda deklarationssats. En variabel kan vara en lokal variabel, definierad i en procedur och endast tillgänglig inom den proceduren, eller så kan den vara en medlemsvariabel som definieras i en modul, klass eller struktur men inte inuti någon procedur. En medlemsvariabel kallas också för ett fält.
Egenskaper
En egenskap är ett dataelement som definierats i en modul, klass eller struktur. Du definierar en egenskap med ett kodblock mellan - och-uttrycken Property
End Property
. Kodblocket innehåller en Get
procedur, en Set
procedur eller både och. Dessa procedurer kallas egenskapsprocedurer eller egenskapsåtkomster. Förutom att hämta eller lagra egenskapens värde kan de också utföra anpassade åtgärder, till exempel att uppdatera en åtkomsträknare.
Skillnad
I följande tabell visas några viktiga skillnader mellan variabler och egenskaper.
Skillnadspunkt | Olika | Property |
---|---|---|
Förklaring | Instruktion för enkel deklaration | Serie med instruktioner i ett kodblock |
Implementering | Enskild lagringsplats | Körbar kod (egenskapsprocedurer) |
Lagring | Direkt associerad med variabelns värde | Intern lagring är vanligtvis inte tillgänglig utanför egenskapens innehållande klass eller modul Egenskapens värde kanske eller kanske inte finns som ett lagrat element 1 |
Körbar kod | Ingen | Måste ha minst en procedur |
Läs- och skrivåtkomst | Skrivskyddad/skrivskyddad | Skrivskyddad,skrivskyddad eller skrivskyddad |
Anpassade åtgärder (förutom att acceptera eller returnera värde) | Inte möjligt | Kan utföras som en del av inställning eller hämtning av egenskapsvärde |
1 Till skillnad från en variabel kanske värdet för en egenskap inte direkt motsvarar ett enda lagringsobjekt. Lagringen kan delas upp i bitar för bekvämlighet eller säkerhet, eller så kan värdet lagras i ett krypterat formulär. I dessa fall skulle proceduren Get
montera delarna eller dekryptera det lagrade värdet, och proceduren Set
skulle kryptera det nya värdet eller dela upp det i den ingående lagringen. Ett egenskapsvärde kan vara tillfälliga, till exempel tid på dagen, i vilket fall proceduren Get
beräknar det i farten varje gång du kommer åt egenskapen.
Se även
- Egenskapsprocedurer
- Procedureparametrar och argument
- Egenskapsutdrag
- Dim-instruktion
- Gör så här: Skapa en egenskap
- Gör så här: Deklarera en egenskap med blandade åtkomstnivåer
- Anvisningar: Anropa en egenskapsprocedur
- Så här deklarerar och anropar du en standardegenskap i Visual Basic
- Gör så här: Placera ett värde i en egenskap
- Anvisningar: Hämta ett värde från en egenskap