アクセシビリティとは
アクセシビリティとはローカル変数、フィールド(クラス・構造体のメンバ変数)、クラス、モジュールなどを宣言するときに使用するアクセス権のことで、その要素を使用したり参照したりすることをどれだけ認めるかを指定するためのものがPublicやPrivateなどのキーワードです。 次の表は、各アクセス修飾子とその概要、適用できる要素をまとめたものです。| アクセス修飾子 | 適用した場合のアクセシビリティ | 適用できる対象 | |||||||
|---|---|---|---|---|---|---|---|---|---|
| 名前空間 | クラス | 構造体 | モジュール | クラス メンバ | 構造体メンバ | モジュール メンバ | ローカル変数 | ||
| Public | 同じプロジェクト、他のプロジェクトからのアクセスが可能。 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | × |
| Protected | 同じクラス、そのクラスの派生クラスからのアクセスのみ可能。 | × | × | × | × | ○ | × | × | × |
| Friend | 同じプロジェクトからのアクセスのみ可能。 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | × |
| Protected Friend | 同じプロジェクト、同じクラス、派生クラスのいずれからもアクセス可能。 | × | × | × | × | ○ | × | × | × |
| Private | 同じモジュール、クラス、または構造体からのみアクセス可能。 | × | ○ | ○ | ○ | ○ | ○ | ○ | × |
| Dim | アクセス修飾子ではないが、フィールド・変数の宣言の際に使用できる。 カッコ内はDim宣言した場合のアクセシビリティ。 | × | × | × | × | ○ (Private) |
○ (Public) |
○ (Private) |
○ (Private) |