Java でアクセス修飾子を使用する方法

WBOY
リリース: 2023-05-10 19:55:04
転載
925 人が閲覧しました

Java のアクセス修飾子は、クラス、インターフェイス、フィールド、メソッドのアクセス範囲を制限するために使用され、それぞれ異なるアクセス制御レベルを表します。 Java には、public、protected、default、private の 4 つのアクセス修飾子があります。

public

public は最もオープンなアクセス修飾子であり、パブリック アクセス レベルを指定するために使用されます。 public によって変更されたクラス、インターフェイス、フィールド、メソッドにはどこからでもアクセスできます。

たとえば、次のコードはパブリック クラスを定義します。

public class MyClass {
    // ...
}
ログイン後にコピー

このクラスはどこからでもアクセスできます。さらに、メソッドまたはフィールドがパブリックとして宣言されている場合は、どこからでもアクセスできます。例:

public class MyClass {
    public String name;
    public void sayHello() {
        System.out.println("Hello, world!");
    }
}
ログイン後にコピー

protected

protected は、保護されたアクセス レベルを指定します。 protected で変更されたクラス、フィールド、メソッドは、このパッケージ内の他のクラスやサブクラスからアクセスできます。

たとえば、次のコードは保護されたクラスを定義します。

package mypackage;
protected class MyProtectedClass {
    // ...
}
ログイン後にコピー

このクラスには、mypackage パッケージ内の他のクラス、および MyProtectedClass を継承するサブクラスからのみアクセスできます。さらに、メソッドまたはフィールドが保護されていると宣言されている場合、同じパッケージ内の他のクラスや、このクラスを継承するサブクラスからもアクセスできます。例:

package mypackage;
public class MyClass {
    protected String name;
    protected void sayHello() {
        System.out.println("Hello, world!");
    }
}
ログイン後にコピー

このクラスの name メソッドと SayHello メソッドには、mypackage パッケージ内の他のクラスや、MyClass を継承するサブクラスからアクセスできます。

default

default は Java のデフォルトのアクセス修飾子であり、パッケージ レベルのプライベート アクセス制御とも呼ばれます。クラス、インターフェイス、フィールド、またはメソッドがアクセス修飾子を使用しない場合、それがデフォルトのアクセス レベルになります。デフォルトのアクセス レベルは、同じパッケージ内でのみアクセスが可能であることを意味します。

たとえば、次のコードは、デフォルトのアクセス レベルを持つクラスを定義します。

package mypackage;
class MyDefaultClass {
    // ...
}
ログイン後にコピー

このクラスには、mypackage パッケージ内の他のクラスからのみアクセスできます。さらに、メソッドまたはフィールドがアクセス修飾子を使用しない場合、それがデフォルトのアクセス レベルでもあります。例:

package mypackage;
public class MyClass {
    String name;
    void sayHello() {
        System.out.println("Hello, world!");
    }
}
ログイン後にコピー

このクラスの name メソッドと SayHello メソッドには、mypackage パッケージ内の他のクラスからのみアクセスできます。

private

private は最も制限的なアクセス修飾子であり、プライベート アクセス レベルを指定するために使用されます。 private によって変更されたフィールドとメソッドは、それらが定義されているクラス内でのみアクセスできます。

たとえば、次のコードはプライベート クラスを定義します。

public class MyClass {
    private String name;
    private void sayHello() {
        System.out.println("Hello, world!");
    }
}
ログイン後にコピー

このクラスの name メソッドと SayHello メソッドには、MyClass クラス内でのみアクセスできます。

以上がJava でアクセス修飾子を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!