public アクセス修飾子と protected アクセス修飾子は、クラスまたはメソッドのメンバーにアクセスする方法を決定します。修飾子は、宣言時にメンバーに付加されます。これらのアクセス修飾子が、カプセル化、ポリモーフィズム、継承などの Java oops の概念で重要な役割を果たしていることがわかっています。メンバーシップが提供する機能の悪用を防ぐのに役立ちます。サンプル プログラムを使用して、Java の public アクセス修飾子と protected アクセス修飾子を理解していきます。
Java はパブリック メンバーのアクセシビリティを制限しません。 public として宣言されたものはどこからでもアクセスできます。つまり、クラス内、クラス外、パッケージ内、パッケージ外でそれらにアクセスできます。 Java の main() メソッドは常にパブリック メソッドとして定義されているため、現在のプログラムの範囲外の JVM から呼び出すことができることに気づいたかもしれません。
パブリックアクセス修飾子の例 -
リーリーここでは、変数は public として宣言されています。
###例###上記のコードでは、「Pack」クラスは「ClassShow」の親クラスです。親クラスでは、単純なメッセージを出力するために「prnt()」というパブリック メソッドを宣言しました。サブクラスのmain()メソッドでは、パブリックメソッド「prnt()」を呼び出すサブクラス「ClassShow」のオブジェクトを定義しています。ここでは、サブクラスもパブリックです。
主に継承の場合に、親クラスのメンバーと対応するサブクラスのメンバーへのアクセスを制御するために使用されます。現在のパッケージの外部の要素へのアクセスは許可されますが、アクセスできるのはクラスの直接のサブクラスのみです。ここで、パッケージとはクラスのセットを保持するコンテナです。
保護されたアクセス修飾子の例 - リーリーここでは、変数は保護されていると宣言されています。 ###例### 次の例は、Java での保護されたメソッドの使用を示しています。
リーリー ###出力### リーリー上記のコードでは、「Pack」クラスは「ClassShow」の親クラスです。親クラスでは、単純なメッセージを出力する「prnt()」という保護されたメソッドを宣言します。サブクラスの main() メソッドでは、保護されたメソッド 'prnt()' を呼び出すためにサブクラス 'ClassShow' のオブジェクトを定義します。
上記の説明から、パブリック アクセス修飾子とプライベート アクセス修飾子の次の違いを導き出すことができます -
######公共######
| 「protected」キーワードを使用して、メンバーが保護されていることを指定します。
|
---|---|
| クラスを保護されたものとして定義できません。
|
| 保護されたメンバーには、パッケージ内だけでなく、他のパッケージからもアクセスできます。ただし、他のパッケージの場合は、継承されたクラスによってのみアクセスできます。
|
| メンバーシップ レベルでのみ利用可能です。
|
以上がJava における public アクセス修飾子と protected アクセス修飾子の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。