パッケージは、アプリケーションを構成するソフトウェアの単位を定義します。そしてそこには関連したクラス、インターフェイス、サブパッケージおよびパッケージ内のクラスが使用するリソースファイルを含みます。
パッケージには、
のような機能があります。
一意なパッケージ名をつけるには、所有するWebサイトのドメイン名を使用します。たとえばexample.comを所有するとき、Sampleパッケージを作成するには、
package com.example.Sample;
のようにします。
パッケージ名を付けられていないパッケージのことです。名前付けをしていないクラスなどは、このパッケージに属します。
インポートするパッケージは、正しく参照されている必要があります。javacならば-classpathオプション、Eclipseならばライブラリの参照設定をします。
staticメンバのクラス名の記述を省き、コードの可読性を向上させます。
インポートするメンバを指定します。
import static パッケージ名.クラス名.メンバ名;
インポートするメンバが属するクラス名を指定し、メンバ名の代わりにアスタリスク「*」を記述します。この方法では、コンパイラは不明な名前が見つかったときに、指定のクラスからstaticメンバを探します。
import static パッケージ名.クラス名.*;
これはコードの可読性と明瞭性を改善するための機能であり、コーディングの手間を省くために使用すべきではありません。誤用するとコードの可読性を下げ、コンパイラにとっても名前衝突の原因となります。
型を参照するために、完全修飾名の代わりに単純名を使用できるようにします。なお型のインポートは、staticインポートを一般化したものです。
import パッケージの正準名;
ちなみにC#では、これはusingディレクティブに相当します。
import パッケージの正準名.*;