「やあ、アミーゴ!今日はパッケージについて話しましょう。」

「コンピュータ上のファイルはフォルダにグループ化されます。Java のクラス (すべてのクラスは個別のファイルに保存されます) は、ハード ドライブ上のフォルダに対応するパッケージにグループ化されます。したがって、ここには何も新しいことはありません。私が感じていることは 2 つあります。」ただし、指摘しておきたいのですが。」

"まずクラスの完全な一意の名前は、そのパッケージ名とクラス名で構成されます。いくつかの例を次に示します。"

完全な一意の名前 パッケージ名 クラス名
java.io.FileInputStream java.io ファイル入力ストリーム
java.lang.String java.lang
java.util.ArrayList java.util 配列リスト
org.apache.tomcat.Servlet org.apache.tomcat サーブレット
指定されていない

「完全なクラス名は常に一意です。」

「毎回長い名前、つまり java.util.ArrayList を書かなければならないとしたら面倒です。だから、Java ではクラスをインポートできます。コード内で他のクラスの短い名前を使用できますが、コードの先頭はクラスでは、どのクラスを使用するかを明示的に指定する必要があります。」

「どうやってそれをするのですか?」

「次のような行があります: import java.util.ArrayList;

「クラスの先頭で、パッケージを宣言した直後に、コード内でArrayList を使用するときにどのクラスを参照しているかを示すことができます。」

「なぜ物事を複雑にしすぎるのですか? クラスは同じ名前を持つことができますか?」

「はい。異なるパッケージ内に同じ名前のクラスが存在する可能性があります。同じ名前の 2 つのクラスをインポートすることはできないため、どちらかのクラスをフルネームで呼び出す必要があります。」

「これがあなたのためのたとえです。あなたにはジムという名前の同僚がいます。それは問題ありません。誰もが彼が誰であるかを知っています。しかし、あなたのオフィスにジムが3人いた場合、あなたは避けるために彼らを完全な一意の名前で呼ぶ必要があるでしょう」錯乱。"

"第 2 にクラスはルートの src フォルダーではなく、パッケージに配置することをお勧めします。クラスが少ない場合は問題ありませんが、クラスが多い場合は混同しやすくなります。クラスは常に作成してください。パッケージの中。」

Java では、クラスやパッケージに意味のある名前を付けるのが一般的です。多くの企業はライブラリ (クラスのセット) をリリースし、混乱を避けるために会社または Web サイトにちなんだ名前を付けています。」

パッケージ名 会社名・プロジェクト名
組織。apache .common
組織 apache .tomcat
組織 apache .util
アパッチ
コム。オラクル.jdbc オラクル
java .io
java x.servlet
太陽、ジャワ島
コム。IBM.WebSphere IBM、ウェブスフィア
コム。ボス ジェイボス