3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

面倒だから楽する仕組み"import"!

Last updated at Posted at 2016-11-20

importは楽する仕組みです。
同一パッケージ内にないクラスを使用する時につかいます。

##分かりやすく説明するために例を1つあげることにしました。

とある高校受験会場で3人の受験生が面接を受けています。
その時の3人の挨拶が以下の通りです。
Aさん「東京都立、新宿中学校、普通科より参りました、Aと申します。」
Bさん「東京都立、新宿中学校、普通科より参りました、Bと申します。」
Cさん「東京都立、新宿中学校、普通科より参りました、Cと申します。」

3人とも「東京都立、新宿中学校、普通科」まで同じ事を言ってますね。
もし、事前に同じ都立の同じ中学校、同じ学科から来た受験生が面接を受ける事がわかっていれば

面接官「東京都立、新宿中学校、普通科のみなさん、どうぞ」
Aさん「Aと申します。」
Bさん「Bと申します。」
Cさん「Cと申します。」

となるはずです。

##javaのプロジェクトで再現してみます!

importdemonstration/
    ├──Jukensei.java    //Aさん~Eさん※イメージ
    ├──Mensetu.java     //面接会場※イメージ

Jukensei.javaの記述はこんな感じになります。

package tokyo.school.course;

public class Jukensei{
	public static  void studentA(){
		System.out.println("studentA");
	}

	public static  void studentB(){
		System.out.println("studentB");
	}

	public static  void studentC(){
		System.out.println("studentC");
	}
}

つぎに面接会場を再現してみましょう!
Mensetu.javaの記述をしていきます。

package mensetu;

public class Mensetu{
	public static void main(String[] args) {
		tokyo.school.course.Jukensei.studentA();    //東京都立、新宿中学校、普通科より参りました、Aと申します。
		tokyo.school.course.Jukensei.studentB();    //東京都立、新宿中学校、普通科より参りました、Bと申します。
		tokyo.school.course.Jukensei.studentC();    //東京都立、新宿中学校、普通科より参りました、Cと申します。
	}
}

これがさっきの例で話していた事です。
tokyo(東京都立).school(新宿中学校).course(普通科).Jukensei(クラス名).studentA()(Aと申します)
いわゆる完全修飾クラス名で記述しています。
完全修飾クラス名中の「ピリオド(.)」は、ディレクトリ区切りを意味します。
ある種「フルパス」ということになるみたいです。

それではimportを使用して書き換えてみることにします。

package mensetu;

import tokyo.school.course.Jukensei;    //面接官「東京都立、新宿中学校、普通科のみなさん、どうぞ」

public class Mensetu{
	public static void main(String[] args) {
		Jukensei.studentA();    //Aさん「Aと申します。」
		Jukensei.studentB();    //Bさん「Bと申します。」
		Jukensei.studentC();    //Cさん「Cと申します。」
	}
}

実行結果は変わりません。
つまり、importは「1個所で宣言する」ということです。

##Eclipseを使用した場合のimport
importを記述せず、いきなり"Jukensei.studentA()"と記述するとエラーがでます。
ですがEclipseには「エラー解決支援」という素晴らしい機能が存在します。
スクリーンショット (3).png

また、Eclipseの便利機能の「入力支援(途中まで入力後"Ctrl+space")」を使用する事で適切なimportしてくれます。

##あとがき
うまく説明できていなかったらごめんなさい。
まとめるのに時間がかかりましたが、正確に記述できていなかったらごめんなさい。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?