Condividi tramite


Istruzione Get

Aggiornamento: novembre 2007

Consente di dichiarare una routine di proprietà Get utilizzata per recuperare il valore di una proprietà.

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

Parti

  • attributelist
    Facoltativo. Per informazioni, vedere Elenco degli attributi.

  • accessmodifier
    Facoltativo per non più di una delle istruzioni Get e Set per questa proprietà. Può essere uno dei seguenti:

    Per informazioni, vedere Livelli di accesso in Visual Basic.

  • statements
    Facoltativa. Una o più istruzioni eseguite quando viene chiamata la routine di proprietà Get.

  • End Get
    Obbligatoria. Consente di terminare la definizione della routine di proprietà Get.

Note

Per ogni proprietà deve esistere una routine di proprietà Get a meno che la proprietà non sia contrassegnata come WriteOnly. La routine Get viene utilizzata per ottenere il valore corrente della proprietà.

In Visual Basic viene automaticamente chiamata la routine Get di una proprietà quando un'espressione richiede il valore della proprietà.

Il corpo della dichiarazione di proprietà può contenere soltanto le routine Get e Set della proprietà fra l'Istruzione Property e l'istruzione End Property. Non può contenere altro al di fuori delle routine indicate. In particolare, non può contenere il valore corrente della proprietà che deve invece essere memorizzato all'esterno della proprietà perché altrimenti, se viene memorizzato all'interno di una o dell'altra routine della proprietà, l'altra non potrà accedervi. Di norma il valore viene memorizzato in una variabile Private (Visual Basic) dichiarata allo stesso livello della proprietà. Una routine Get deve essere definita all'interno della proprietà a cui si riferisce.

La routine Get assume per impostazione predefinita il livello di accesso della proprietà che la contiene, a meno che non si utilizzi il parametro accessmodifier nell'istruzione Get.

Regole

  • Livelli di accesso misto. Quando si definisce una proprietà di lettura-scrittura, se lo si desidera, è possibile specificare un livello di accesso diverso per la routine Get o per la routine Set, ma non per entrambe. Se si decide di avvalersi di questa possibilità, il livello di accesso della routine deve essere più restrittivo del livello di accesso della proprietà. Se ad esempio la proprietà è dichiarata Friend, la routine Get può essere dichiarata Private, ma non Public.

    Se si sta definendo una proprietà ReadOnly, la routine Get rappresenta l'intera proprietà. Non è possibile dichiarare un livello di accesso diverso per Get in quanto altrimenti per la proprietà verrebbero specificati due livelli di accesso.

  • Tipo restituito. Con l'Istruzione Property è possibile dichiarare il tipo di dati del valore restituito. La routine Get restituisce automaticamente quel tipo di dati. È possibile specificare qualsiasi tipo di dati o anche il nome di un'enumerazione, di una struttura, di una classe o di un'interfaccia.

    Se nell'istruzione Property non è specificato returntype, la routine restituisce Object.

Comportamento

  • Uscita da una routine. Quando la routine Get torna al codice chiamante, l'esecuzione continua all'interno dell'istruzione che ha richiesto il valore della proprietà.

    Le routine di proprietà Get possono restituire un valore utilizzando l'Istruzione Return (Visual Basic) oppure assegnando il valore restituito al nome della proprietà. Per ulteriori informazioni, vedere "Valore restituito" in Istruzione Function (Visual Basic).

    Le istruzioni Exit Property e Return consentono di uscire immediatamente da una routine di proprietà. In qualunque punto della routine può apparire un numero qualsiasi di istruzioni Exit Property e Return ed è possibile combinare istruzioni Exit Property e Return.

  • Valore restituito. Per ottenere un valore da una routine Get, è possibile assegnare il valore al nome della proprietà oppure includerlo in un'Istruzione Return (Visual Basic). L'istruzione Return assegna il valore restituito della routine Get e contemporaneamente consente di uscire dalla routine.

    Se si utilizza l'istruzione Exit Property senza assegnare un valore al nome della proprietà, la routine Get restituisce il valore predefinito per il tipo di dati della proprietà. Per ulteriori informazioni, vedere "Valore restituito" in Istruzione Function (Visual Basic).

    Nell'esempio seguente sono illustrati due metodi che consentono alla proprietà di sola lettura quoteForTheDay di restituire il valore contenuto nella variabile privata quoteValue.

    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
    

Esempio

Nell'esempio seguente l'istruzione Get viene utilizzata per restituire il valore di una proprietà.

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

Vedere anche

Attività

Procedura: aggiungere campi e proprietà a una classe

Riferimenti

Istruzione Set (Visual Basic)

Istruzione Property

Istruzione Exit (Visual Basic)