フィールド・メソッドのアクセス修飾子の種類
- public
- protected
- 記述なし
- private
以上の4つが存在する。
それぞれのアクセス修飾子を比較
public class Abc{
// 1."public"の場合。
// 他のパッケージのクラスからもアクセス可能なフィールド
public String a1;
// 他のパッケージのクラスからもアクセス可能なメソッド
public String b1(String b2){
処理
}
// 2."protected"の場合。→他のパッケージのクラスからアクセスできない。
// class Abcのサブクラスと同一パッケージのクラスからアクセス可能なメソッド
protected char c1;
// class Abcのサブクラスと同一パッケージのクラスからアクセス可能なメソッド
protected String d1(String d2){
処理
}
// 3.記述なしの場合。
// 同一パッケージ内のみ使用可能なフィールド
String e1;
// 同一パッケージ内のみ使用可能なフィールド
String f1(String f2){
処理
}
// 4."private"の場合。
// class Abcでしかアクセスできないフィールド
String g1;
// class Abcでしかアクセスできないメソッド
String h1(String h1){
処理
}
}
"protected"と記述なしの違いとしてはサブクラスがアクセス可能かどうかという点。
サブクラスが違うパッケージに属していてもアクセス可能。
クラスのアクセス修飾子についてはこちら