Public (Visual Basic)Public (Visual Basic)

1つ以上の宣言されたプログラミング要素にアクセス制限がないことを指定します。Specifies that one or more declared programming elements have no access restrictions.


クラスライブラリなど、コンポーネントまたはコンポーネントのセットを発行する場合は、通常、アセンブリと相互運用できるコードでプログラミング要素にアクセスできるようにする必要があります。If you are publishing a component or set of components, such as a class library, you usually want the programming elements to be accessible by any code that interoperates with your assembly. 要素に対して無制限のアクセス権を付与するには、Publicで宣言します。To confer such unlimited access on an element, you can declare it with Public.

パブリックアクセスは、プログラミング要素へのアクセスを制限する必要がない場合の通常のレベルです。Public access is the normal level for a programming element when you do not need to limit access to it. インターフェイス、モジュール、クラス、または構造体で宣言されている要素のアクセスレベルは、既定では、宣言しない場合は Public になることに注意してください。Note that the access level of an element declared within an interface, module, class, or structure defaults to Public if you do not declare it otherwise.


  • 宣言コンテキスト。Declaration Context. Public は、モジュール、インターフェイス、または名前空間レベルでのみ使用できます。You can use Public only at module, interface, or namespace level. つまり、Public 要素の宣言コンテキストは、ソースファイル、名前空間、インターフェイス、モジュール、クラス、または構造体である必要があり、プロシージャにすることはできません。This means the declaration context for a Public element must be a source file, namespace, interface, module, class, or structure, and cannot be a procedure.


  • アクセスレベル。Access Level. モジュール、クラス、または構造体にアクセスできるすべてのコードは、その Public 要素にアクセスできます。All code that can access a module, class, or structure can access its Public elements.

  • 既定のアクセス。Default Access. プロシージャ内のローカル変数は、既定でパブリックアクセスに設定されているので、アクセス修飾子を使用することはできません。Local variables inside a procedure default to public access, and you cannot use any access modifiers on them.

  • アクセス修飾子。Access Modifiers. アクセスレベルを指定するキーワードは、アクセス修飾子と呼ばれます。The keywords that specify access level are called access modifiers. アクセス修飾子の比較については、「Visual Basic でのアクセス レベル」を参照してください。For a comparison of the access modifiers, see Access levels in Visual Basic.

Public 修飾子は、次のコンテキストで使用できます。The Public modifier can be used in these contexts:

Class ステートメントClass Statement

Const ステートメントConst Statement

Declare ステートメントDeclare Statement

Delegate ステートメントDelegate Statement

Dim ステートメントDim Statement

Enum ステートメントEnum Statement

Event ステートメントEvent Statement

Function ステートメントFunction Statement

Interface ステートメントInterface Statement

Module ステートメントModule Statement

Operator ステートメントOperator Statement

Property ステートメントProperty Statement

Structure ステートメントStructure Statement

Sub ステートメントSub Statement

関連項目See also