Compartilhar via


Obter Instrução

Declara um Get procedimento de propriedade usado para recuperar o valor de uma propriedade.

Sintaxe

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

Partes

Prazo Definição
attributelist Opcional. Consulte a Lista de Atributos.
accessmodifier Opcional em no máximo uma das Get instruções e Set nesta propriedade. Pode ser um dos seguintes:

- Protegido
- Amigo
- Privado
- Protected Friend

Consulte os níveis de acesso no Visual Basic.
statements Opcional. Uma ou mais instruções que são executadas quando o procedimento de Get propriedade é chamado.
End Get Obrigatório Encerra a definição do Get procedimento de propriedade.

Observações

Cada propriedade deve ter um Get procedimento de propriedade, a menos que a propriedade esteja marcada WriteOnly. O Get procedimento é usado para retornar o valor atual da propriedade.

O Visual Basic chama automaticamente o procedimento de Get uma propriedade quando uma expressão solicita o valor da propriedade.

O corpo da declaração de propriedade pode conter apenas a propriedade Get e Set os procedimentos entre a Instrução property e a instrução End Property . Ele não pode armazenar nada além desses procedimentos. Em particular, ele não pode armazenar o valor atual da propriedade. Você deve armazenar esse valor fora da propriedade, pois se você armazená-lo dentro de qualquer um dos procedimentos de propriedade, o outro procedimento de propriedade não poderá acessá-lo. A abordagem usual é armazenar o valor em uma variável privada declarada no mesmo nível da propriedade. Você deve definir um Get procedimento dentro da propriedade à qual ele se aplica.

O Get procedimento usa como padrão o nível de acesso de sua propriedade que contém, a menos que você use accessmodifier na instrução Get .

Regras

  • Níveis de acesso mistos. Se você estiver definindo uma propriedade de leitura/gravação, opcionalmente poderá especificar um nível de acesso diferente para o GetSet procedimento ou o procedimento, mas não ambos. Se você fizer isso, o nível de acesso do procedimento deverá ser mais restritivo do que o nível de acesso da propriedade. Por exemplo, se a propriedade for declarada Friend, você poderá declarar o Get procedimento Private, mas não Public.

    Se você estiver definindo uma ReadOnly propriedade, o Get procedimento representará toda a propriedade. Você não pode declarar um nível de acesso diferente para Get, porque isso definiria dois níveis de acesso para a propriedade.

  • Tipo de retorno. A Instrução property pode declarar o tipo de dados do valor retornado. O Get procedimento retorna automaticamente esse tipo de dados. Você pode especificar qualquer tipo de dados ou o nome de uma enumeração, estrutura, classe ou interface.

    Se a Property instrução não especificar returntype, o procedimento retornará Object.

Comportamento

  • Retornando de um procedimento. Quando o Get procedimento retorna ao código de chamada, a execução continua dentro da instrução que solicitou o valor da propriedade.

    Get os procedimentos de propriedade podem retornar um valor usando a Instrução Return ou atribuindo o valor retornado ao nome da propriedade. Para obter mais informações, consulte "Valor retornado" na instrução Function.

    As Exit Property instruções e as Return instruções causam uma saída imediata de um procedimento de propriedade. Qualquer número de Exit Property instruções e instruções Return podem aparecer em qualquer lugar no procedimento e você pode misturar Exit Property e Return instruções.

  • Valor retornado. Para retornar um valor de um Get procedimento, você pode atribuir o valor ao nome da propriedade ou incluí-lo em uma Instrução Return. A Return instrução atribui simultaneamente o valor de retorno do Get procedimento e sai do procedimento.

    Se você usar Exit Property sem atribuir um valor ao nome da propriedade, o Get procedimento retornará o valor padrão para o tipo de dados da propriedade. Para obter mais informações, consulte "Valor retornado" na instrução Function.

    O exemplo a seguir ilustra duas maneiras pelas quais a propriedade quoteForTheDay somente leitura pode retornar o valor mantido na variável quoteValueprivada.

    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
    

Exemplo

O exemplo a seguir usa a Get instrução para retornar o valor de uma propriedade.

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

Consulte também