方法 : 複数のアクセス レベルを持つプロパティを宣言する

更新 : 2007 年 11 月

プロパティ上の Get および Set プロシージャに異なるアクセス レベルを割り当てるには、Property ステートメントでは制限のレベルを低くし、Get または Set ステートメントで制限のレベルを高くします。混合アクセス レベルを使用すると、コード内の特定の部分がプロパティの値を取得できるようにし、他の特定の部分でその値を変更できるようにすることができます。

アクセス レベルの詳細については、「Visual Basic でのアクセス レベル」を参照してください。

混合アクセス レベルでプロパティを宣言するには

  1. 通常どおりプロパティを宣言し、Property ステートメントで制限の緩いアクセス レベル (Public など) を指定します。

  2. Get または Set プロシージャは、より制限の厳しいアクセス レベル (Friend など) を指定して宣言します。

  3. その他のプロパティ プロシージャではアクセス レベルを指定しません。Property ステートメントで宣言されたアクセス レベルが使用されます。アクセスを制限できるのは、プロパティ プロシージャのうち 1 つだけです。

    Public Class employee
        Private salaryValue As Double
        Protected Property salary() As Double
            Get
                Return salaryValue
            End Get
            Private Set(ByVal value As Double)
                salaryValue = value
            End Set
        End Property
    End Class
    

    上の例では、Get プロシージャはプロパティと同じ Protected アクセスを持ち、Set プロシージャは Private アクセスを持ちます。employee から派生したクラスは、salary の値を読み取ることができますが、この値を設定できるのは employee クラスのみです。

参照

処理手順

方法 : プロパティを作成する

方法 : プロパティ プロシージャを呼び出す

方法 : 既定のプロパティを宣言する/呼び出す (Visual Basic)

方法 : プロパティに値を格納する

方法 : プロパティから値を取得する

概念

Visual Basic におけるプロシージャ

Property プロシージャ

プロシージャのパラメータと引数

Visual Basic のプロパティと変数の違い

参照

Property ステートメント