すべてのカテゴリ » インターネット・パソコン » 技術・プログラミング

質問

終了

Javaでクラスの頭にpublicやprotectedを付けられますが、それぞれどういった時に使うのか、バカでも分かるように教えてください。

  • 質問者:匿名希望
  • 質問日時:2009-09-12 13:49:06
  • 0

public、protected等を総称してアクセス修飾子と呼びます。
これらは各クラスにアクセス制限をかける時に利用します。

アクセス修飾子には4種類あり、それぞれの特徴は以下の通りとなっています。
・public
 全クラスからアクセス可能なクラス。
・protected
 同一パッケージ内の他クラス、およびサブクラスからアクセス可能なクラス。
・なし(パッケージプライベート)
 同一パッケージ内の他クラスからアクセス可能なクラス。
・private
 同一クラスからのみアクセス可能なクラス。

主に利用するのはpublic、protectedです。
privateは主に内部クラスに利用します。

  • 回答者:dede (質問から2日後)
  • 0
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。

並び替え:

アクセス修飾子を使う事によって、変数やメソッド、クラスなどの参照できる範囲を制限することができます。

public :全てのクラスからアクセス可能。
protected:同一クラス内、同一パッケージ、サブクラスからアクセス可能。
private :同一クラス内のみアクセス可能。
指定なし :同一クラス内、同一パッケージからアクセス可能。


下記のサイト等が参考になると思います。

アクセス修飾子 Javaの文法 - Wikipedia
http://ja.wikipedia.org/wiki/Java%E3%81%AE%E6%96%87%E6%B3%95#.E3.82.A2.E3.82.AF.E3.82.BB.E3.82.B9.E4.BF.AE.E9.A3.BE.E5.AD.90

楽しいJava入門 アクセス修飾子
http://www.lcv.ne.jp/~kenmio/yomimono/yomimono10.htm

  • 回答者:LOFT (質問から36分後)
  • 1
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。

public : すべてのクラスからの参照を許す
protected : 他ファイル・他クラスからのアクセスをプロテクトする

すべてpublicで宣言すると
同じ名前のサブクラス名が付けれないので不便

クラスは別として雑用の使い捨て変数が
重複して使用できないとコードが非常に煩雑になる。

と自分が思った問題点を書いてみたけど
別に、すべてpublicでやっても問題ないと思う。

大規模なものを作らなければ
メモリの無駄遣いとか最近は気にしないしね。

  • 回答者:我流 (質問から26分後)
  • 0
この回答の満足度
  
参考になり、満足しました。回答ありがとうございました。

関連する質問・相談

Sooda!からのお知らせ

一覧を見る