アクセサを使用してプライベートデータメンバーにアクセスできる場合、プライベートメソッドにアクセスできないのはなぜですか?

ルシャブ・オズワル

次のようなアクセサメソッドを使用してプライベートデータメンバーにアクセスできます

 private int num=5;

 public int get_num()
 {
  return num;
 }

numがプライベートデータメンバーであっても、どのクラスからでも戻り値にアクセスできます。

同様に、プライベートメソッドを返すアクセサメソッドを作成することはできませんか?考えたばかりですが、出来ない場合は説明してください。ありがとうございます。

ezaquarii

publicメソッドを介してprivateメソッドにアクセスできます。これは、複雑なプライベートメソッドをラップし、より単純なパブリックAPIを公開するために使用されることがあります。

class Delegator {

    private void doPrivateStuff(int param) { ... }

    public void doStuffOnce() {
        doPrivateStuff(1);
    }

    public void doStuffIfConditionIsMet() {
        if(condition) {
            doPrivateStuff(1);
        }
    }
}

リフレクションを使用してプライベートメソッドにアクセスすることもできます。http://tutorials.jenkov.com/java-reflection/private-fields-and-methods.html

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ