Javaのアクセス修飾子
Javaのアクセス修飾子の働きを忘れてたので調べた。
アクセス修飾子 | 自ファイル | 他ファイル | |||
---|---|---|---|---|---|
自クラス | サブクラス | 他クラス | サブクラス | 他クラス | |
public | ○ | ○ | ○ | ○ | ○ |
protected | ○ | ○ | ○ | ○ | × |
なし | ○ | ○ | ○ | × | × |
private | ○ | × | × | × | × |
exampleA/ExClassAファイル
package exampleA; public class ExClassA { public String exPublic = "publicアクセスレベル"; protected String exProtected = "protectedアクセスレベル"; String exDefault = "無指定アクセスレベル"; private String exPrivate = "privateアクセスレベル"; }
exampleB/ExClassBファイル
package exampleB; import exampleA.*; public class ExClassB extends ExClassA { //(1) public static void main(String[] args) { ExClassA objectA = new ExClassA(); //(2) System.out.println(objectA.exPublic); //(3) //System.out.println(objectA.exProtected); //(4) //System.out.println(objectA.exDefault); //(5) //System.out.println(objectA.exPrivate); //(6) ExClassB objectB = new ExClassB(); //(7) System.out.println(objectB.exProtected); //(8) } }
参照