HTML HTML5 HTMLタグ スマートフォン |
CSS CSSプロパティ CSS・HTML便利ツール |
HTML色見本 配色組み合わせツール 特殊文字 |
JAVA Android |
PHP Smarty修飾子 EXCEL |
自ファイル | 他ファイル | ||||
---|---|---|---|---|---|
アクセス修飾子 | 自クラス | サブクラス | 他クラス | サブクラス | 他クラス |
public | ○ | ○ | ○ | ○ | ○ |
private | ○ | × | × | × | × |
protected | ○ | ○ | ○ | ○ | × |
なし | ○ | ○ | ○ | × | × |
自ファイル・自クラスからのアクセス
public class Test1 { // public, protected, 無し, privateな値の定義 public int public_v; protected int protected_v; private int private_v; int v; public static void main(String[] args) { } public Test1() { this.public_v = 1; this.protecte_v = 2; this.private_v = 3; this.v = 4; } }
自ファイル・サブクラスからのアクセス
class Test2 extends Test1 { void Test2() { this.public_v = 1; this.protecte_v = 2; // this.private_v = 3; ← アクセス不可 this.v = 4; } }
自ファイル・他クラスからのアクセス
class Test3 { void Test3() { Test1 o = new Test1(); o.public_v = 1; o.protecte_v = 2; // o.private_v = 3; ← アクセス不可 o.v = 4; } }
他ファイル・サブクラスからのアクセス
public class Test4 extends Test1 { public static void main(String[] args) { } Test4() { this.public_v = 1; this.protecte_v = 2; // this.private_v =3; ← アクセス不可 // this.v = 4; ← アクセスできない } }
他ファイル・サブクラスからのアクセス
class Test5 { Test1() { AccessTest1 o = new Test1(); o.public_v = 1; // o.protected_v = 2; ← アクセス不可 // o.private_v = 3; ← アクセス不可 // o.v = 4; ← アクセス不可 } }