Instrução Get
Declara um procedimento de propriedade Get
usado para recuperar o valor de uma propriedade.
Sintaxe
[ <attributelist> ] [ accessmodifier ] Get()
[ statements ]
End Get
Partes
Termo | Definição |
---|---|
attributelist |
Opcional. Veja Lista de atributo. |
accessmodifier |
Opcional em no máximo uma das instruções Get e Set nesta propriedade. Um dos seguintes pode ser feito:- Protegido - Friend - Privado - Protected Friend Consulte Níveis de acesso no Visual Basic. |
statements |
Opcional. Uma ou mais instruções que são executadas quando o procedimento de propriedade Get é chamado. |
End Get |
Obrigatórios. Encerra a definição do procedimento de propriedade Get . |
Comentários
Cada propriedade deve ter um procedimento de propriedade Get
, a menos que a propriedade seja marcada WriteOnly
. O procedimento Get
é usado para retornar o valor atual da propriedade.
O Visual Basic chama automaticamente o procedimento Get
de uma propriedade quando uma expressão solicita o valor da propriedade.
O corpo da declaração de propriedade pode conter apenas os procedimentos Get
e Set
da propriedade entre a Declaração de Propriedade e a instrução End Property
. Ele não pode armazenar nada além desses procedimentos. Em especial, ele não pode armazenar o valor atual da propriedade. Você deve armazenar esse valor fora da propriedade, porque 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 procedimento Get
dentro da propriedade à qual ele se aplica.
O procedimento Get
é padrão para o nível de acesso da propriedade que o 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 procedimento
Get
ou o procedimentoSet
, mas não ambos. Se você fizer isso, o nível de acesso ao procedimento deverá ser mais restritivo do que o nível de acesso da propriedade. Por exemplo, se a propriedade for declaradaFriend
, você poderá declarar o procedimentoGet
Private
, mas nãoPublic
.Se você estiver definindo uma propriedade
ReadOnly
, o procedimentoGet
representará toda a propriedade. Você não pode declarar um nível de acesso diferente paraGet
, pois isso definiria dois níveis de acesso para a propriedade.Tipo de retorno. A instrução de propriedade pode declarar o tipo de dados do valor que retorna. O procedimento
Get
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 instrução
Property
não especificarreturntype
, o procedimento retornaráObject
.
Comportamento
Retorno de um procedimento. Quando o procedimento
Get
retorna ao código de chamada, a execução continua dentro da instrução que solicitou o valor da propriedade.Os procedimentos de propriedade
Get
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 instruções
Exit Property
eReturn
causam uma saída imediata de um procedimento de propriedade. Qualquer número de instruçõesExit Property
eReturn
podem aparecer em qualquer lugar no procedimento, e você pode misturar instruçõesExit Property
eReturn
.Valor de retorno. Para retornar um valor de um procedimento
Get
, você pode atribuir o valor ao nome da propriedade ou incluí-lo em uma instrução return. Ao mesmo tempo, a instruçãoReturn
atribui o valor de retorno do procedimentoGet
e sai do procedimento.Se você usar
Exit Property
sem atribuir um valor ao nome da propriedade, o procedimentoGet
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 somente leitura
quoteForTheDay
pode retornar o valor mantido na variável privadaquoteValue
.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 instrução Get
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