talosのプログラミング教室

はじめてのJava ~パッケージとインポート編~

スポンサーリンク

f:id:talosta:20200331181701p:plain


今回はJavaのパッケージとインポートについて説明します。

パッケージはクラスインタフェースの集まりです。

パッケージを使うことでクラスインタフェースの管理が容易になります。

作るプログラムが大規模になるほどよく利用することになるので、しっかり学習しましょう。

パッケージの作り方

「package」を使います。

このときパッケージ名とソースコードがあるディレクトリ名は同じでなければなりません。

例えばパッケージ名を

package dir.pack;

とした場合は、このソースコードは「dir/pack」になければいけません。

以下の例ではパッケージ名が「pack」なので、packディレクトリの中にこれらのソースコードを置いています。

package pack;

public class Class1 {
    public void method1() {
        System.out.println("method1");
    }
}
package pack;

public class Class2 {
    public void method2() {
        System.out.println("method2");
    }
}
package pack;

public class Pack {
    public static void main(String args[]) {
        Class1 c1 = new Class1();
        c1.method1();
        Class2 c2 = new Class2();
        c2.method2();
    }
}

このパッケージを構築するには、packの親ディレクトリに移動し次のコマンドを実行します。

javac pack\*.java

さらに、このコマンドによって作成されるpack.classファイルは以下のコマンドで実行します。

java pack.Pack

出力は以下のようになります。

method1
method2

パッケージのインポート

「import」を使います。

import pack.*;

class ImportSample {
    public static void main(String args[]) {
        Class1 c1 = new Class1();
        c1.method1();
    }
}
// 出力
method1

「*」を使うことでpackのパッケージ全体をインポートできます。

今回はClass1しか使っていないので、

import pack.Class1

とすることもできます。

ディレクトリ構成は以下のようになっています。

root
  |--ImoprtSample.java
  |--pack
      |--Class1.java
      |--Class2.java
      |--Pack.java

本来、ImportSample.javaからはClass1クラスを認識できません。

しかし、importを使うことでそれを可能にします。

おわりに

今回はJavaのパッケージとインポートについて説明しました。

次回は例外処理について説明します。