Revised: Jan./1st/2002: Since: Jan./1st/2002
コアパッケージは沢山の種類があり、色々なクラスが定義されています。これらの便利な機能を利用したければ、一般には完全限定名をインポートします。
java.lang
パッケージ例外として、 java.lang
パッケージ内のクラスが挙げられます。
このパッケージは、コンパイラ javac
によってバイトコードにコンパイルされるときに、自動的にインポートされますので、わざわざ明示的にインポートする必要はありません。例えば基本データ型のラップクラス、文字列を格納する String
クラス、数学的演算操作を可能にする Math
クラスなどです。
Java 環境では、言語仕様の中で利用できる機能を提供するものとして、大量のパッケージ群が提供されておりコアパッケージと呼ばれています。これに含まれるパッケージには、 java.lang
の他にも沢山の種類があり、その仕様は API 仕様にまとめられています。本稿でも、コア・パッケージの代表的な標準クラスについて解説しています。
ここではその利用例として、 java.util
の利用について紹介します。 java.util
パッケージは、コレクションフレームワーク、従来のコレクションクラス、イベントモデル、日付と時刻の機構、国際化、およびさまざまなユーティリティクラス (文字列トークナイザ、乱数ジェネレータ、ビット配列) が含まれています。
次の例は java.util
パッケージのインポート例です。このパッケージの Date
クラスをインスタンス化しています。
//パッケージのインポート import java.util.*; //クラス定義 class TestDate{ public static void main(String args[]){ //Dateクラスのインスタンス化 Date hiduke=new Date(); System.out.println(hiduke); //オブジェクトのメソッドの利用 long i=hiduke.getTime(); System.out.println(i); //Dateクラスのインスタンス化 Date epoch=new Date(i); System.out.println(epoch); } }
Date
クラスは日付情報を保持します。引数のないコンストラクタでは現在の時刻がシステムから取得され、保持されます。 double
型の引数を持つコンストラクタでは標準時からのミリ秒数を受け取り、標準時からの指定されたミリ秒数を保持します。
C:\Java>javac TestDate.java C:\Java>java TestDate Wed Jan 02 18:05:57 JST 2002 1009962357107 Wed Jan 02 18:05:57 JST 2002
私が実行した時刻にシステムが保持していた時刻が表示されています。
コア・パッケージのインポートは、 API 仕様に明記されたとおりに記述すれば良いことになっています。自作パッケージの場合は、基準ディレクトリからの相対パスでしたので、随分違う感じがしますが、コアパッケージを参照するパス情報が、システムの CLASSPATH 変数に自動的にセットされているということです。
本格的にアプリケーション開発に臨むならば、 CLASSPATH 変数のセットは不可欠な手順です。