public、protected、private、デフォルトなど。Javaのアクセス修飾子についてまとめています。
Javaでは、オブジェクトの属性(変数)に不正な値が入らないように外部からのアクセスに制限をかけることが出来ます。 また変数だけでなくメソッドや、クラス全体に対してもアクセス制限をすることが出来ます。 これは、クラスを記述するときにクラスとメンバに割り当てるアクセス修飾子を使用します。
Java言語ではpublic、protected、privateという3つの明示的なアクセス修飾子と、 何も修飾子を指定しなかった場合に強制的に使われるデフォルト修飾子が用意されています。 なお、これらのアクセス修飾子はローカル変数には使用することが出来ません。
以下では、各アクセス修飾子についてまとめています。
public修飾子を使うと、Java要素のアクセス制限は最も緩くなります。 publicとして宣言したクラス、変数、メソッドは、Javaアプリケーション内のどこからでもアクセスできます。 ただし、一般的に、インスタンス変数をpublicとして宣言することはオブジェクト指向プログラミングの慣習としては勧められていません。 インスタンス変数は必ずメソッドを通じてアクセスすべきであるといわれています。
private修飾子を使うと、Java要素(クラスまたはクラスメンバ)のアクセス制限は最も厳しくなり、 自クラス以外は一切アクセス不可となります。private修飾子はクラスメンバにのみ適用できます。
protected修飾子を使うと、同じパッケージ内のクラスから利用可能になります。 また、同じクラスを継承したすべてのサブクラスから利用可能になります。 異なるパッケージでもサブクラスからであれば利用可能となります。 なお、protected修飾子をクラス宣言に対して使用することは出来ません。
ある要素に何も指定しなかった場合、その要素のアクセスはデフォルトとみなされます。 デフォルト修飾子を表すキーワードはありません。 デフォルトの場合、同じパッケージ内のクラスから利用可能になります。
Javaのアクセス修飾子のアクセスレベルを整理すると次のようになります。
アクセス修飾子 | クラス | サブクラス | パッケージ | その他のすべて |
---|---|---|---|---|
private | ○ | × | × | × |
デフォルト | ○ | × | ○ | × |
protected | ○ | ○ | ○ | × |
public | ○ | ○ | ○ | ○ |
もっと知識を広げるための参考です。
static変数、staticメソッド、staticイニシャライザ、staticインポートなど。Javaのstatic修飾子についてまとめています。
クラス、メソッド、変数、引数での使い方など。Javaのfinal修飾子についてまとめています。
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インフラセキュリティ
公開サーバーのセキュリティ
SI
ホームページの作り方
スポンサーリンク
関連サイト内検索ツール
zealseedsおよび関連サイト内のページが検索できます。
IPアドレス確認ツール
あなたのグローバルIPアドレスは以下です。
3.145.103.100
HTMLの表示色確認ツール
パスワード生成ツール
文字数のプルダウンを選択して、取得ボタンを押すと「a~z、A~Z、0~9」の文字を ランダムに組み合わせた文字列が表示されます。
ここに生成されます。
スポンサーリンク
Copyright (C) 2007-2024 zealseeds. All Rights Reserved. Loarding…