パッケージ(package)

パッケージとは

Javaのパッケージ(Package)は、クラスやインタフェースなどのリソースをグループ化するための仕組みです。
パッケージを使用する目的には、主に以下3つの目的があります。

クラスを分類し分かりやすくする
Javaアプリケーション開発では多くのクラスを組み合わせて開発しますが、同じ機能や目的のクラスをパッケージで分類するとクラスの管理がとてもわかり易くなります。
クラス名の衝突を避ける
パッケージを使用するとクラスは、パッケージ名とクラス名をあわせた名称(完全修飾クラス名)で管理されるため、他のクラス名と名称が衝突してしまうことを避けることができます。
パッケージ単位でアクセス制御を行う
パッケージ単位でアクセス制御を行うことができます。
(クラスのデフォルトのアクセス修飾子の動作は、同じパッケージ内のみアクセス可能)

クラスにパッケージを指定しない場合は内部的には、無名パッケージに属しているとみなされます。

パッケージの定義例

クラスをパッケージに属させることをパッケージ化と呼びます。
クラスにパッケージを適用させるには、
クラス定義の先頭に「package <パッケージ名>;」を指定します。
※必ず先頭に指定する櫃業があります。


package com.example.pkg01;

public class TestClass {
  //処理
}

パッケージ名を階層化させるにはドットで区切ります。

パッケージ名には慣習として、ドメイン名を逆にしたものが使用されますが必須ではありません。
(例)aaa.bbb.co.jp → jp.co.bbb.aaa

Java標準パッケージ

Javaには予め用意された機能ライブラリがパッケージとして用意されています。
標準パッケージは200以上ありますが、主要なパッケージは下のようなものがあります。

【主要標準パッケージ】
標準パッケージメモ
java.io入出力操作に関連する機能を提供するパッケージ
java.lang最も基本的な機能を提供するパッケージ
java.math算術演算に関する機能を提供するパッケージ
java.netネットワークプログラミングに必要な機能を提供するパッケージ
java.nioノンブロッキングI/O、ファイル操作、バッファ操作などの新しいI/O機能を提供するパッケージ
java.sqlデータベースに関連する機能を提供するパッケージ
java.textテキストフォーマットやローカライゼーションに関連する機能を提供するパッケージ
java.utilユーティリティに関連する機能を提供するパッケージ
javax.netネットワークプログラミングに必要な機能を提供するパッケージ
(java.netパッケージの拡張)
javax.sqlデータベースに関連する機能を提供するパッケージ
(java.sqlパッケージの拡張)
javax.swingGUIコンポーネントを提供するための機能を提供するパッケージ
javax.xmlXML処理をサポートするための機能を提供するパッケージ

すべての標準パッケージ一覧を確認したい場合は、以下ページを御覧ください。
Java標準パッケージ一覧

コメント

タイトルとURLをコピーしました