Private Protected キーワードの組み合わせは、メンバー アクセス修飾子です。
Private Protected メンバーは、その包含クラス内のすべてのメンバーと、その包含クラスから派生した型によってアクセスできますが、それが含まれるアセンブリで見つかった場合にのみアクセスできます。
Private Protectedはクラスのメンバーにのみ指定できます。構造体を継承できないため、構造体のメンバーにPrivate Protectedを適用することはできません。
Private Protected アクセス修飾子は、Visual Basic 15.5 以降でサポートされています。 これを使用するには、Visual Basic プロジェクト (*.vbproj) ファイルに次の要素を追加します。 Visual Basic 15.5 以降がシステムにインストールされている限り、最新バージョンの Visual Basic コンパイラでサポートされているすべての言語機能を利用できます。
<PropertyGroup>
<LangVersion>latest</LangVersion>
</PropertyGroup>
詳細については、 Visual Basic 言語バージョンの設定を参照してください。
注
Visual Studio で、 private protected で F1 ヘルプを選択すると、 プライベート または 保護のヘルプが提供されます。 IDE は、複合語ではなく、カーソルの下にある 1 つのトークンを選択します。
準則
- 宣言コンテキスト。
Private Protectedはクラス レベルでのみ使用できます。 つまり、Protected要素の宣言コンテキストはクラスである必要があり、ソース ファイル、名前空間、インターフェイス、モジュール、構造体、またはプロシージャにすることはできません。
行動
アクセス レベル。 クラス内のすべてのコードは、その要素にアクセスできます。 基底クラスから派生し、同じアセンブリに含まれているクラスのコードは、基底クラスのすべての
Private Protected要素にアクセスできます。 ただし、基底クラスから派生し、別のアセンブリに含まれているクラスのコードは、基底クラスPrivate Protected要素にアクセスできません。アクセス修飾子。 アクセス レベルを指定するキーワードは、 アクセス修飾子と呼ばれます。 アクセス修飾子の比較については、「 Visual Basic のアクセス レベル」を参照してください。
Private Protected修飾子は、次のコンテキストで使用できます。
入れ子になったクラスの Class ステートメント
クラスに入れ子になったデリゲートの Delegate ステートメント
クラスに入れ子になった列挙体の Enum ステートメント
クラスに入れ子になったインターフェイスの Interface ステートメント
クラスに入れ子になった構造体の Structure ステートメント
こちらも参照ください
.NET