<< 修飾子一覧 | main | スタティック修飾子(static) >>

スポンサーサイト

  • 2013.11.08 Friday
  • -
  • -
  • -
  • by スポンサードリンク

一定期間更新がないため広告を表示しています


アクセス修飾子(public, protected, private)

public、protected、private は アクセス修飾子 と呼ばれ、指定した変数やクラスなどを、どの範囲から参照可能かのスコープを制御するのに用いられます。クラス、インタフェース、メソッド、コンストラクタ、変数の修飾子として利用できます。

アクセス修飾子 自ファイル 他ファイル
自クラス サブクラス 他クラス サブクラス 他クラス
public ○ ○ ○ ○ ○
protected ○ ○ ○ ○ ×
なし ○ ○ ○ × ×
private ○ × × × ×

public は「すべてのクラスからの参照を許す」、protected は「他ファイル・他クラスからのアクセスをプロテクトする」、private は「自クラスからのアクセスしか許さない」という意味になります。

§AccessTest1.java
public class AccessTest1 {

// public, protected, 無し, privateな値の定義
public int publicValue;
protected int protectedValue;
/* 無し */ int normalValue;
private int privateValue;

public static void main(String[] args) {
}

// 自ファイル・自クラスからのアクセステスト
public AccessTest1() {
this.publicValue = 1;
this.protectedValue = 2;
this.normalValue = 3;
this.privateValue = 4;
}
}

class AccessTest2 extends AccessTest1 {
// 自ファイル・サブクラスからのアクセステスト
void AccessTest2() {
this.publicValue = 1;
this.protectedValue = 2;
this.normalValue = 3;
// this.privateValue = 4; ← アクセスできない
}
}

class AccessTest3 {
// 自ファイル・他クラスからのアクセステスト
void AccessTest3() {
AccessTest1 o = new AccessTest1();
o.publicValue = 1;
o.protectedValue = 2;
o.normalValue = 3;
// o.privateValue = 4; ← アクセスできない
}
}

§AccessTest4.java
public class AccessTest4 extends AccessTest1 {

public static void main(String[] args) {
}

// 他ファイル・サブクラスからのアクセステスト
AccessTest4() {
this.publicValue = 1;
this.protectedValue = 2;
// this.normalValue = 3; ← アクセスできない
// this.privateValue = 4; ← アクセスできない
}
}

class AccessTest5 {
// 他ファイル・他クラスからのアクセステスト
AccessTest5() {
AccessTest1 o = new AccessTest1();
o.publicValue = 1;
// o.protectedValue = 2; ← アクセスできない
// o.normalValue = 3; ← アクセスできない
// o.privateValue = 4; ← アクセスできない
}
}


スポンサーサイト

  • 2013.11.08 Friday
  • -
  • 22:31
  • -
  • -
  • by スポンサードリンク

コメント
コメントする









この記事のトラックバックURL
トラックバック
相互リンク
selected entries
categories
archives
profile
search this site.
others
mobile
qrcode
powered
無料ブログ作成サービス JUGEM
calendar
    123
45678910
11121314151617
18192021222324
252627282930 
<< June 2017 >>
sponsored links