Utasítás lekérése

Deklarál egy Get tulajdonság értékének lekéréséhez használt tulajdonságeljárást.

Syntax

[ <attributelist> ] [ accessmodifier ] Get()  
    [ statements ]  
End Get  

Részek

Időszak Definíció
attributelist Opcionális. Lásd: Attribútumlista.
accessmodifier A tulajdonságban szereplő utasítások és Set utasítások közül legfeljebb egy Get nem kötelező. A következők egyike lehet:

- Védett
- Barátom
- Privát
- Protected Friend

Lásd a Visual Basic hozzáférési szintjeinek megtekintését.
statements Opcionális. Egy vagy több utasítás, amely a Get tulajdonságeljárás meghívásakor fut.
End Get Szükséges. Leállítja a tulajdonságeljárás definícióját Get .

Megjegyzések

Minden tulajdonságnak tulajdonságeljárással Get kell rendelkeznie, kivéve, ha a tulajdonság meg van jelölve WriteOnly. Az Get eljárás a tulajdonság aktuális értékének visszaadására szolgál.

A Visual Basic automatikusan meghívja a tulajdonság eljárását Get , amikor egy kifejezés kéri a tulajdonság értékét.

A tulajdonságdeklaráció törzse csak a tulajdonság Get és a tulajdonságkivonat és Set az End Property utasítás közötti eljárásokat tartalmazhatja. Ezen eljárásokon kívül nem tárolhat másokat. Különösen nem tudja tárolni a tulajdonság aktuális értékét. Ezt az értéket a tulajdonságon kívül kell tárolnia, mert ha valamelyik tulajdonságeljárásban tárolja, a másik tulajdonságeljárás nem fér hozzá. A szokásos módszer az érték tárolása egy olyan privát változóban, amely a tulajdonság azonos szintjén van deklarálva. Meg kell határoznia egy Get eljárást azon a tulajdonságon belül, amelyre vonatkozik.

Az Get eljárás alapértelmezés szerint az azt tartalmazó tulajdonság hozzáférési szintjére van bekapcsolva, hacsak nem használja accessmodifier az Get utasítást.

Szabályok

  • Vegyes hozzáférési szintek. Ha írási-olvasási tulajdonságot határoz meg, megadhat egy másik hozzáférési szintet az eljáráshoz vagy az GetSet eljáráshoz, de mindkettőhöz nem. Ha ezt teszi, az eljárás hozzáférési szintjének szigorúbbnak kell lennie, mint a tulajdonság hozzáférési szintje. Ha például a tulajdonság deklarálva Friendvan, deklarálhatja az Get eljárást Private, de nem Public.

    Ha egy tulajdonságot ReadOnly definiál, az eljárás a Get teljes tulajdonságot jelöli. Nem deklarálhat másik hozzáférési szintet a tulajdonsághoz Get, mert az két hozzáférési szintet állítana be a tulajdonsághoz.

  • Visszatérési típus. A tulajdonságkivonat deklarálhatja a visszaadott érték adattípusát. Az Get eljárás automatikusan visszaadja ezt az adattípust. Bármilyen adattípust vagy enumerálás, struktúra, osztály vagy felület nevét megadhatja.

    Ha az Property utasítás nem adja meg returntype, az eljárás eredményül ad Objectvissza.

Működés

  • Visszatérés egy eljárásból. Amikor az Get eljárás visszatér a hívó kódhoz, a végrehajtás a tulajdonság értékét kérő utasításon belül folytatódik.

    Get a tulajdonságeljárások a Visszatérési utasítással vagy a visszatérési érték tulajdonságnévhez való hozzárendelésével adhatnak vissza értéket. További információ: "Visszatérési érték" a függvényutasításban.

    Az Exit Property és Return az utasítások azonnali kilépést okoznak egy tulajdonságeljárásból. Tetszőleges számú Exit Property és Return utasítás jelenhet meg az eljárás bármely pontján, és keverheti és Return megadhatja Exit Property az utasításokat.

  • Visszaadott érték. Ha egy értéket egy eljárásból Get szeretne visszaadni, hozzárendelheti az értéket a tulajdonság nevéhez, vagy belefoglalhatja egy Return Utasításba. Az Return utasítás egyidejűleg hozzárendeli az eljárás visszatérési Get értékét, és kilép az eljárásból.

    Ha Exit Property a tulajdonságnévhez nem rendel értéket, az Get eljárás a tulajdonság adattípusának alapértelmezett értékét adja vissza. További információ: "Visszatérési érték" a függvényutasításban.

    Az alábbi példa két módszert mutat be, amelyekkel az írásvédett tulajdonság quoteForTheDay visszaadhatja a magánváltozóban quoteValuetárolt értéket.

    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
    

Példa

Az alábbi példa egy Get tulajdonság értékét adja vissza az utasítással.

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

Lásd még