Get (Instrucción)
Declara un procedimiento Get de propiedad utilizado para recuperar el valor de una propiedad.
Sintaxis
[ <attributelist> ] [ accessmodifier ] Get()
[ statements ]
End Get
Partes
| Término | Definición |
|---|---|
attributelist |
Opcional. Vea Lista de atributos. |
accessmodifier |
Opcional como máximo en una de las Get instrucciones y de esta Set propiedad. Puede ser uno de los siguientes:- Protegido - Amigo - Privado - Protected FriendConsulte Niveles de acceso en Visual Basic. |
statements |
Opcional. Una o varias instrucciones que se ejecutan cuando se llama Get al procedimiento de propiedad. |
End Get |
Necesario. Finaliza la definición del procedimiento Get de propiedad. |
Comentarios
Cada propiedad debe tener un procedimiento de propiedad a Get menos que la propiedad esté marcada como WriteOnly . El Get procedimiento se usa para devolver el valor actual de la propiedad .
Visual Basic llama automáticamente al procedimiento de una Get propiedad cuando una expresión solicita el valor de la propiedad.
El cuerpo de la declaración de propiedad solo puede contener los procedimientos y de la Get propiedad entre la instrucción Property Set y la End Property instrucción . No puede almacenar nada que no sea esos procedimientos. En concreto, no puede almacenar el valor actual de la propiedad. Debe almacenar este valor fuera de la propiedad , porque si lo almacena dentro de cualquiera de los procedimientos de propiedad, el otro procedimiento de propiedad no puede acceder a él. El enfoque habitual es almacenar el valor en una variable Private declarada en el mismo nivel que la propiedad . Debe definir un Get procedimiento dentro de la propiedad a la que se aplica.
El procedimiento tiene como valor predeterminado el nivel de acceso de su propiedad que lo contiene, a menos Get que se use en la instrucción accessmodifier Get .
Reglas
Niveles de acceso mixtos. Si va a definir una propiedad de lectura y escritura, opcionalmente puede especificar un nivel de acceso diferente para el procedimiento o
GetSet, pero no ambos. Si lo hace, el nivel de acceso del procedimiento debe ser más restrictivo que el nivel de acceso de la propiedad. Por ejemplo, si la propiedad se declaraFriend, puede declarar el procedimiento , pero noGetPrivatePublic.Si va a definir una
ReadOnlypropiedad, elGetprocedimiento representa toda la propiedad. No se puede declarar un nivel de acceso diferente paraGet, porque se establecerían dos niveles de acceso para la propiedad .Tipo de valor devuelto. La instrucción Property puede declarar el tipo de datos del valor que devuelve. El
Getprocedimiento devuelve automáticamente ese tipo de datos. Puede especificar cualquier tipo de datos o el nombre de una enumeración, estructura, clase o interfaz.Si la
Propertyinstrucción no especifica , el procedimiento devuelvereturntypeObject.
Comportamiento
Devolver de un procedimiento. Cuando el procedimiento vuelve al código de llamada, la ejecución continúa
Getdentro de la instrucción que solicitó el valor de propiedad.GetLos procedimientos de propiedad pueden devolver un valor mediante la instrucción Return o asignando el valor devuelto al nombre de propiedad. Para obtener más información, vea "Valor devuelto" en Function Statement.Las
Exit Propertyinstrucciones y provocan una salida inmediata de un procedimiento deReturnpropiedad. Cualquier número deExit Propertyinstrucciones y puede aparecer en cualquier parte delReturnprocedimiento, y puede mezclar instruccionesExit PropertyyReturn.Valor devuelto. Para devolver un valor de un procedimiento, puede asignar el valor al nombre de propiedad
Geto incluirlo en una instrucción Return. LaReturninstrucción asigna simultáneamente el valor devuelto delGetprocedimiento y sale del procedimiento.Si usa sin asignar un valor al nombre de propiedad, el procedimiento devuelve el valor predeterminado para el tipo
Exit Propertyde datos de laGetpropiedad. Para obtener más información, vea "Valor devuelto" en Function Statement.En el ejemplo siguiente se muestran dos maneras en que la propiedad de solo lectura
quoteForTheDaypuede devolver el valor que se mantiene en la variable privadaquoteValue.Private quoteValue As String = "No quote assigned yet."ReadOnly Property QuoteForTheDay() As String Get QuoteForTheDay = quoteValue Exit Property End Get End PropertyReadOnly Property QuoteForTheDay() As String Get Return quoteValue End Get End Property
Ejemplo
En el ejemplo siguiente se usa Get la instrucción para devolver el valor de una propiedad .
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