BLOG
ブログ

2019.04.15

[Java] インポート文の基礎 

インポート文とは

他のパッケージに含まれるクラスを利用するための予約語です。バイトコードをクラスライブラリから探して、パッケージ情報を与えます。

一つのパッケージにつき、同じクラスの名前は一つがしか存在できません。しかしパッケージが違えば、同じ名前のクラスが存在してもよいことになってます。パッケージ間での同じクラス名の衝突を避けるため、インポート文を使うのです。

 

 

インポート文の書き方

パッケージの間で、同じクラスの名前が存在しても衝突しないように「完全修飾名」を使います。完全修飾名とは、パッケージ名とクラス名を連結したものです。同じパッケージに属するならパッケージ名の後にアスタリスク(*)を指定することで、全てのクラスを インポートできます。ただ、このように記述した場合は、思わぬクラスもインポートしてしまう可能性があります。

 

importのサンプルコードは以下の通りです。

 

 

実行結果(3月10日に実行した場合)

 

 

このサンプルコードではjava.utilパッケージのCalendarクラスを使用しました。Calendarクラスのオブジェクトに、getメソッドで変数dayを代入してます。java.utilパッケージは、Calendarクラスの他にも配列を操作するためのArraysクラス、将来実行されるタスクをスケジュールするTimarクラスなど便利なクラスがいろいろあります。

 

 

Javaの代表的なパッケージ

 

 java.net ネットワーク・アプリケーションを実装するためのクラスを提供
 java.lang
Javaプログラミング言語を設計するための基本的なクラスを提供
 java.util さまざまなユーティリティ・クラスを提供
 java.io  ファイル・システム経由でのシステム入出力用に提供
 java.sql  データ・ソースに格納されたデータにアクセスして処理するためのAPIを提供

 

上記に挙げたパッケージは一部のパッケージです。その他のパッケージ一覧も知りたい方は、以下のオラクルのサイトをご覧ください。

URL:https://docs.oracle.com/javase/jp/8/docs/api/overview-summary.html

 

 

 

インポート文の例外

StringクラスやMathクラスなどを利用する際には import文を記述する必要はありません。StringクラスやMathクラスがjava.langという特別なパッケージに所属していて、自動的にインポートされるためです。

 

下記のサンプルをご参考ください。

Stringクラスがjava.langパッケージに含まれているため、省略できることを表してます。普段目にするStringクラスは、簡易表記された文だったのですね。