Java インポートとstaticインポートのサンプル(import)

Javaのインポートのサンプルです。

目次

説明 インポートとは(import)
  staticインポートとは

インポートとは(import)

import パッケージ名.クラス名またはインターフェース名
import パッケージ名.*
  • importを行うとパッケージ名を省略できます。
  • importは、ファイルの先頭で宣言します。
  • パッケージ名の後にアスタリスク(*)の指定も可能です。その場合パッケージ全体が対象になります。オンデマンドインポートと呼ばれます。
  • importは読み込むということではなく、あくまでパッケージ名を省略する機能です。
  • importがなくてもパッケージ名を記述すればエラーになりませんが通常は行いません。

importを使用した場合

package test1;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;

public class Test1 {
	public static void main(String[] args) {
		
		Charset charset = StandardCharsets.UTF_8;
	}
}

3行目で、importを使用しているため、8行目はパッケージ名を記述していません。
java.nio.charsetがパッケージ名でStandardCharsetsがクラス名です。

importを使用しない場合

package test1;
import java.nio.charset.Charset;

public class Test1 {
	public static void main(String[] args) {
		
		Charset charset = java.nio.charset.StandardCharsets.UTF_8;
	}
}

上記のコードでは、StandardCharsetsクラスのimport文がありません。
7行目はクラス名の前にパッケージ名を付けています。

パッケージとは

  • パッケージをつけることによってファイルを別々に管理できます。
  • パッケージを宣言しない場合は、デフォルトパッケージになります。
  • test2.sample1のようにドット区切りで名称を2つ以上続ける事が可能です。

staticインポートとは

import static パッケージ名.クラス名
  • staticメソッドやstatic変数を呼び出す時にクラス名を省略できます。
    →例:Mathクラスのceilメソッドはstaticメソッドですが、staticインポートを行うことによってMathクラスの記述を省略できます。
  • インポートとは、名前解決のための情報です。クラスは取り込みません。
  • Java staticメソッドとstatic変数のサンプル

Staticインポートのサンプル

package test1;

import static java.lang.Math.ceil;
//import static java.lang.Math.*;

public class Test1 {
	public static void main(String[] args) {

		double a = 2.26;
		System.out.println(Math.ceil(a)); //3.0
		System.out.println(ceil(a)); //3.0
 	}
}

3行目は、Staticインポートです。
4行目のように、アスタリスク(*)を使用することも可能です。オンデマンドインポートと呼ばれます。
11行目は、Mathクラスとceilメソッドを記述しています。実行できます。
13行目は、ceilメソッドのみ記述しています。Mathクラスの記述がありませんが実行できます。
ceilメソッドは小数第一位で切り上げます。

定数の場合

package com.example.demo;

public class Const {
	public static final int TEST_CODE1 = 100;
}

4行目は定数です。

package com.example.demo;

import static com.example.demo.Const.*;

public class Test1 {

	public static void main(String[] args) {

		System.out.println(TEST_CODE1); // 100
	}
}

3行目は、staticのimportを行っています。
9行目は、値のみの記述です。

関連の記事

Java staticメソッドとstatic変数のサンプル
Java static初期化ブロックと初期化ブロック
Java final修飾子のサンプル(定数として使用)

△上に戻る