Hämta instruktion
Deklarerar en Get
egenskapsprocedur som används för att hämta värdet för en egenskap.
Syntax
[ <attributelist> ] [ accessmodifier ] Get()
[ statements ]
End Get
Delar
Period | Definition |
---|---|
attributelist |
Valfritt. Se Attributlista. |
accessmodifier |
Valfri på högst en av - och-uttrycken Get Set i den här egenskapen. Kan vara något av följande:- Skyddade - Vän - Privat - Protected Friend Se Åtkomstnivåer i Visual Basic. |
statements |
Valfritt. En eller flera instruktioner som körs när egenskapsproceduren Get anropas. |
End Get |
Obligatoriska. Avslutar definitionen av egenskapsproceduren Get . |
Kommentarer
Varje egenskap måste ha en Get
egenskapsprocedur om inte egenskapen har markerats WriteOnly
. Proceduren Get
används för att returnera egenskapens aktuella värde.
Visual Basic anropar automatiskt en egenskaps Get
procedur när ett uttryck begär egenskapens värde.
Brödtexten i egenskapsdeklarationen kan endast innehålla egenskapens och Set
procedurerna mellan egenskapsutdraget Get
och -instruktionenEnd Property
. Den kan inte lagra något annat än dessa procedurer. I synnerhet kan den inte lagra egenskapens aktuella värde. Du måste lagra det här värdet utanför egenskapen, för om du lagrar det i någon av egenskapsprocedurerna kan den andra egenskapsproceduren inte komma åt det. Den vanliga metoden är att lagra värdet i en privat variabel som deklareras på samma nivå som egenskapen. Du måste definiera en Get
procedur i egenskapen som den gäller för.
Proceduren Get
är standard för åtkomstnivån för dess innehållande egenskap såvida du inte använder accessmodifier
i -instruktionen Get
.
Regler
Blandade åtkomstnivåer. Om du definierar en skrivskyddad egenskap kan du ange en annan åtkomstnivå för antingen proceduren
Get
Set
eller , men inte båda. Om du gör det måste åtkomstnivån för proceduren vara mer restriktiv än egenskapens åtkomstnivå. Om egenskapen till exempel deklarerasFriend
kan du deklarera procedurenGet
Private
, men intePublic
.Om du definierar en
ReadOnly
egenskap representerar procedurenGet
hela egenskapen. Du kan inte deklarera en annan åtkomstnivå förGet
, eftersom det skulle ange två åtkomstnivåer för egenskapen.Returtyp. Egenskapsinstrukturen kan deklarera datatypen för det värde som returneras. Proceduren
Get
returnerar automatiskt den datatypen. Du kan ange valfri datatyp eller namnet på en uppräkning, struktur, klass eller gränssnitt.Om instruktionen
Property
inte angerreturntype
returnerarObject
proceduren .
Funktionssätt
Returnerar från en procedur. När proceduren
Get
återgår till anropskoden fortsätter körningen i -instruktionen som begärde egenskapsvärdet.Get
egenskapsprocedurer kan returnera ett värde med antingen returutdraget eller genom att tilldela returvärdet till egenskapsnamnet. Mer information finns i "Returvärde" i funktionsinstrukturen.Instruktionen
Exit Property
ochReturn
orsakar ett omedelbart utträde från en egenskapsprocedur. Valfritt antalExit Property
ochReturn
instruktioner kan visas var som helst i proceduren och du kan blandaExit Property
ochReturn
instruktioner.Returvärde. Om du vill returnera ett värde från en
Get
procedur kan du antingen tilldela värdet till egenskapsnamnet eller inkludera det i en retursats. InstruktionenReturn
tilldelar samtidigt procedurensGet
returvärde och avslutar proceduren.Om du använder
Exit Property
utan att tilldela ett värde till egenskapsnamnetGet
returnerar proceduren standardvärdet för egenskapens datatyp. Mer information finns i "Returvärde" i funktionsinstrukturen.I följande exempel visas två sätt som den skrivskyddade egenskapen
quoteForTheDay
kan returnera värdet som finns i den privata variabelnquoteValue
.Private quoteValue As String = "No quote assigned yet."
ReadOnly Property QuoteForTheDay() As String Get QuoteForTheDay = quoteValue Exit Property End Get End Property
ReadOnly Property QuoteForTheDay() As String Get Return quoteValue End Get End Property
Exempel
I följande exempel används -instruktionen Get
för att returnera värdet för en egenskap.
Class propClass
' Define a private local variable to store the property value.
Private currentTime As String
' Define the read-only property.
Public ReadOnly Property DateAndTime() As String
Get
' The Get procedure is called automatically when the
' value of the property is retrieved.
currentTime = CStr(Now)
' Return the date and time As a string.
Return currentTime
End Get
End Property
End Class