トップ 言語 Java アクセス修飾子、スコープ、定数 Javaのアクセス修飾子

Javaのアクセス修飾子―public、protected、private、デフォルトなど

public、protected、private、デフォルトなど。Javaのアクセス修飾子についてまとめています。

▲記事トップへ

Javaのアクセス修飾子

Javaでは、オブジェクトの属性(変数)に不正な値が入らないように外部からのアクセスに制限をかけることが出来ます。 また変数だけでなくメソッドや、クラス全体に対してもアクセス制限をすることが出来ます。 これは、クラスを記述するときにクラスとメンバに割り当てるアクセス修飾子を使用します。

Java言語ではpublic、protected、privateという3つの明示的なアクセス修飾子と、 何も修飾子を指定しなかった場合に強制的に使われるデフォルト修飾子が用意されています。 なお、これらのアクセス修飾子はローカル変数には使用することが出来ません。

以下では、各アクセス修飾子についてまとめています。

public修飾子

public修飾子を使うと、Java要素のアクセス制限は最も緩くなります。 publicとして宣言したクラス、変数、メソッドは、Javaアプリケーション内のどこからでもアクセスできます。 ただし、一般的に、インスタンス変数をpublicとして宣言することはオブジェクト指向プログラミングの慣習としては勧められていません。 インスタンス変数は必ずメソッドを通じてアクセスすべきであるといわれています。

private修飾子

private修飾子を使うと、Java要素(クラスまたはクラスメンバ)のアクセス制限は最も厳しくなり、 自クラス以外は一切アクセス不可となります。private修飾子はクラスメンバにのみ適用できます。

protected修飾子

protected修飾子を使うと、同じパッケージ内のクラスから利用可能になります。 また、同じクラスを継承したすべてのサブクラスから利用可能になります。 異なるパッケージでもサブクラスからであれば利用可能となります。 なお、protected修飾子をクラス宣言に対して使用することは出来ません。

デフォルト修飾子

ある要素に何も指定しなかった場合、その要素のアクセスはデフォルトとみなされます。 デフォルト修飾子を表すキーワードはありません。 デフォルトの場合、同じパッケージ内のクラスから利用可能になります。

Javaのアクセス修飾子のアクセスレベル

Javaのアクセス修飾子のアクセスレベルを整理すると次のようになります。

各アクセス修飾子におけるアクセスレベル
アクセス修飾子クラスサブクラスパッケージその他のすべて
private × × ×
デフォルト × ×
protected ×
public

もっと知識を広げるための参考

もっと知識を広げるための参考です。

Javaのstatic修飾子

static変数、staticメソッド、staticイニシャライザ、staticインポートなど。Javaのstatic修飾子についてまとめています。

詳細

Javaのfinal修飾子

クラス、メソッド、変数、引数での使い方など。Javaのfinal修飾子についてまとめています。

詳細

Java言語

Javaとは?から言語の枠を超えるところまで、Java言語についてまとめています。

詳細

戻る

スポンサーリンク

サイト内のページ

言語
C・C++ /HTML /Java /JavaScript /PHP /シェルスクリプト

開発環境
Ant /Burp /Eclipse /Fiddler /gcc /gdb /Git /g++ /JDK /JMeter /JUnit /Teraterm /ZAP

技術・仕様
Ajax /CORBA /Jakarta EE(旧称J2EE、Java EE) /JNI

ライブラリ/Framework/CMS
bootstrap /jQuery /FuelPHP /Lucene /MyBatis /Seasar2 /Spring /Struts /WordPress

Web API
Google Maps

ITインフラOSとミドルウェア
Linux /Windows /シェル
ActiveMQ /Tomcat /MariaDB /MySQL /Nagios /Redis /Solr

ITインフラサーバー
公開Webサーバー

ITインフラネットワーク
プログラミング /構築

ITインフラセキュリティ
公開サーバーのセキュリティ

PC製品
ZOTAC

SI
ホームページの作り方

その他
IT用語 /ITスキル体系

スポンサーリンク

関連サイト内検索ツール

zealseedsおよび関連サイト内のページが検索できます。

IPアドレス確認ツール

あなたのグローバルIPアドレスは以下です。

13.59.234.226

HTMLの表示色確認ツール

パスワード生成ツール

文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。

ここに生成されます。

スポンサーリンク