Javaの実案件に必須のパッケージとインポートを知る:【改訂版】Eclipseではじめるプログラミング(10)(2/3 ページ)
これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipse 3.4とJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります
Eclipseでパッケージに含まれるクラスを作ってみる
次に、このパッケージに含まれる「Sample90」クラス(sample.Sample90)を作成します。
これまでの連載では、パッケージに含まれるクラスを作りませんでしたが、実は、こういったクラスは、「デフォルト・パッケージ」にクラスが追加されていました。今回は、sampleパッケージに含まれるクラスを作成したので、[パッケージ・エクスプローラー]ではsampleパッケージの下に「Sample90.java」というファイルが出来ているのが分かります。
「package」キーワードの使い方
また、自動生成されたソースコードを見ると、このクラスがsampleパッケージのクラスであることを示すには、先頭で「package」というキーワードを使って含まれるパッケージ名を宣言するようにコーディングすればよいことが分かるはずです。
package sample; public class Sample90 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub } }
パッケージはフォルダ、クラスはファイル
ファイルシステム上では、パッケージはフォルダ(ディレクトリ)に、クラス(ソース)はJavaソースコードファイルに対応しています。このため、Windowsでエクスプローラで対応するフォルダを開くと、図7のようになっているはずです。
Eclipseをインストールしたフォルダにある「workspace\Sample」フォルダが「Sample」プロジェクトと対応するフォルダで、その中にあるsampleフォルダがsampleパッケージと対応するフォルダです。このsampleフォルダにsample.Sample90クラスと対応するソースコードファイルSample90.javaがあることを確認できます。
Javaバイトコードファイルは、「workspace\Sample\bin」フォルダの中にあるsampleフォルダ内にSample90.classというファイル名で生成されていることを確認できます。
パッケージ名を省略するための「import文」
なおパッケージを含めたクラス名を使うと、パッケージ名の分はタイピング量が増えるので、省略したい場合があります。そんなときは、「import文」(インポート、引き入れる)を使います。次のようにsample.Sample90クラスを修正してください。
package sample; import java.util.List; import java.util.ArrayList; import java.util.LinkedList; public class Sample90 { public static void main(String[] args) { new Sample90().execute(); } public void execute() { List list = new ArrayList(); list.add("A"); list.add("B"); for (int i = 0; i < list.size(); i++) { String s = (String) list.get(i); System.out.print(s + " "); } System.out.println(""); list = new LinkedList(); list.add("A"); list.add("B"); for (int i = 0; i < list.size(); i++) { String s = (String) list.get(i); System.out.print(s + " "); } } }
ここでは、java.util.Listインターフェイス、java.util.ArrayListクラス、java.util.LinkedListクラスをimportしています。これらのクラスを使う場合、前回の「プログラムを「変更」しやすくする“インターフェイス”」で作成したSample90(sample.Sample90ではありません)では、パッケージも含めてコーディングしていましたが、今回のsample.Sample90のようにimport文で指定しておくと、各インターフェイス、各クラスともにパッケージは省略してコーディングできるようになっていることが分かります。
実行する場合は、これまでと同じです。プログラムの内容はパッケージに含まれるクラスにして、java.util.Listインターフェイスなどのパッケージ名を省略できるようにimport文を使うように修正しただけなので、前回のSample90クラスと同じになり、Sample90の実行結果となります。
A B A B
注意 「java.langパッケージだけは、import文も省略できる」
ここで、少しだけ注意点があります。実は「String」クラスや「System」クラスの正式名はそれぞれ「java.lang.String」「java.lang.System」になります。
ただし、java.langパッケージのクラスについては、パッケージ名を省略できるので、StringやSystemとコーディングできたのです。ほかのパッケージについては、import文を使わないと省略することはできません。
次ページでは、さらに複数のクラスをインポートする方法を説明します。また、パッケージ名は、どのように付けるべきかも紹介するので、参考にしてください。
Copyright © ITmedia, Inc. All Rights Reserved.