プロパティの値を取得するために使用 Get
プロパティ プロシージャを宣言します。
構文
[ <attributelist> ] [ accessmodifier ] Get()
[ statements ]
End Get
部品
任期 | 定義 |
---|---|
attributelist |
任意。 属性リストを参照してください。 |
accessmodifier |
このプロパティの Get ステートメントと Set ステートメントの 1 つ以上では省略可能です。 次のいずれかを指定できます。- 保護 - 友人 - プライベート - Protected Friend Visual Basic のアクセス レベルを参照してください。 |
statements |
任意。
Get プロパティ プロシージャが呼び出されたときに実行される 1 つ以上のステートメント。 |
End Get |
必須。
Get プロパティ プロシージャの定義を終了します。 |
注釈
プロパティがWriteOnly
マークされていない限り、すべてのプロパティにGet
プロパティ プロシージャが必要です。
Get
プロシージャは、プロパティの現在の値を返すために使用されます。
Visual Basic は、式がプロパティの値を要求したときに、プロパティの Get
プロシージャを自動的に呼び出します。
プロパティ宣言の本文には、Property ステートメントと End Property
ステートメントの間のプロパティのGet
プロシージャとSet
プロシージャのみを含めることができます。 これらのプロシージャ以外のプロシージャは格納できません。 特に、プロパティの現在の値を格納することはできません。 この値はプロパティの外部に格納する必要があります。これは、いずれかのプロパティ プロシージャ内に格納した場合、他のプロパティ プロシージャはプロパティ プロシージャにアクセスできないためです。 通常の方法では、プロパティと同じレベルで宣言された Private 変数に値を格納します。
Get
プロシージャを適用するプロパティ内で定義する必要があります。
Get
プロシージャは、Get
ステートメントでaccessmodifier
を使用しない限り、その包含プロパティのアクセス レベルに既定で設定されます。
準則
混合アクセス レベル。 読み取り/書き込みプロパティを定義する場合は、必要に応じて、
Get
またはSet
プロシージャに別のアクセス レベルを指定できますが、両方を指定することはできません。 これを行う場合、プロシージャのアクセス レベルは、プロパティのアクセス レベルよりも制限が厳しい必要があります。 たとえば、プロパティがFriend
宣言されている場合、Get
プロシージャPrivate
宣言できますが、Public
は宣言できません。ReadOnly
プロパティを定義する場合、Get
プロシージャはプロパティ全体を表します。 プロパティに 2 つのアクセス レベルが設定されるため、Get
に対して異なるアクセス レベルを宣言することはできません。戻り値の型。 Property ステートメントは、返される値のデータ型を宣言できます。
Get
プロシージャは、そのデータ型を自動的に返します。 任意のデータ型、または列挙型、構造体、クラス、またはインターフェイスの名前を指定できます。Property
ステートメントでreturntype
が指定されていない場合、プロシージャはObject
を返します。
行動
プロシージャから戻ります。
Get
プロシージャが呼び出し元のコードに戻ると、プロパティ値を要求したステートメント内で実行が続行されます。Get
プロパティ プロシージャは、 Return ステートメント を使用するか、プロパティ名に戻り値を割り当てることによって、値を返すことができます。 詳細については、 Function ステートメントの「戻り値」を参照してください。Exit Property
ステートメントとReturn
ステートメントにより、プロパティ プロシージャがすぐに終了します。 プロシージャ内の任意の数のExit Property
ステートメントとReturn
ステートメントを使用でき、Exit Property
ステートメントとReturn
ステートメントを混在させることができます。戻り値。
Get
プロシージャから値を返すには、プロパティ名に値を割り当てるか、Return ステートメントに含めることができます。Return
ステートメントは、Get
プロシージャの戻り値を同時に割り当て、プロシージャを終了します。プロパティ名に値を割り当てずに
Exit Property
を使用すると、Get
プロシージャはプロパティのデータ型の既定値を返します。 詳細については、 Function ステートメントの「戻り値」を参照してください。次の例は、
quoteForTheDay
読み取り専用プロパティがプライベート変数quoteValue
に保持されている値を返す 2 つの方法を示しています。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
例
次の例では、 Get
ステートメントを使用してプロパティの値を返します。
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
こちらも参照ください
.NET