マンガで分かる Java入門講座

第9章 クラスとオブジェクト2
9-1. パッケージ

クラスを階層的に整理する「パッケージ」という仕組みを紹介します。

● パッケージによるクラスの整理

 Javaのクラスは「パッケージ」という方法によって分類されています。

 例えばStringというクラスは、「java/lang/String.java」というパスのファイルになり、パッケージは「java.lang」になります。パッケージ名の階層は「.(ピリオド)」で区切られます。

 各クラスは、このようにフォルダによって分類されています。そして、クラスのコードである拡張子.javaのファイルの冒頭には、以下のようにパッケージ名が記されています。

ソースコード)パッケージによるクラスの整理
package sample.hoge;

public class Sample {
}

● 自作クラスのパッケージの命名法

 自分で作ったクラスは、独自のパッケージに収めます。このパッケージ名は、他人と被らないようにすることが求められます。

 以下、自作クラスのパッケージの命名方法を示します。

手順)自作クラスのパッケージの命名法
  1. crocro.comというドメインを持っている。
  2. ひっくり返してcom.crocroにする。
  3. 分類する内容がutil(Utilityの略)ならば末尾に付ける。
  4. com.crocro.utilとする。

● Javaに元々備わっているパッケージとクラス

 Javaに元々備わっているパッケージとクラスは、「API 仕様」を見ることで確認できます。

リンク)API 仕様

● パッケージのインポート

 Javaでは、別のパッケージのクラスを使う際には、クラスの前にパッケージ名を書かなければなりません。

ソースコード)パッケージを書いてクラスを使う
java.io.File f = new java.io.File("./");

 しかし実際は、このようにして書かれることはほとんどありません。Javaでは、このパッケージ名を省略するためのルールが3つ用意されています。

 1つ目のルールは、プログラムを書き込むクラスと同じパッケージの場合は省略できるというものです。これは、わざわざパッケージ名を書かなくても、同じパッケージ内にあるから分かるからです。

 2つ目のルールは、java.langパッケージ内のクラスは、パッケージ名を省略できるというものです。java.langには、Javaの基本的なクラスが収められているからです。

 3つ目のルールは「インポート」です。クラスの初めの方に「import」と書くことで、長いパッケージ名を、そのクラス内で省略して使えるようになります。

 最新の「Eclipse」では、コード中にクラスを書くと、自動でインポートを行います。

 自動でインポートされない場合は、マウスカーソルを重ねるとメニューが表示されます。このメニューを選択することで、インポートをしたり、新しいクラスを作ったりできます。

ソースコード)パッケージのインポート
package sample;

import java.io.Console;
import java.io.File;

public class Test {
    public static void main(String[] args) {
        File f = new File("./");
        Console cons = System.console();
    }
}

この講座のマンガ部分は「箱人形マンガ(Box Comic) 」で作成しています。
作成:2013/06/02  更新:2016/02/09  [Permalink]