Javaパッケージの作成からプログラム実行までの手順を解説
この記事では、「animals」という名前のパッケージを作成し、実際にコンパイル・実行するまでの一連の手順を、具体的なサンプルコードとともに解説します。
パッケージ名の命名規則
Javaでは、クラス名やインターフェース名との競合(名前の衝突)を避けるために、パッケージ名はすべて小文字で命名することがベストプラクティスとされています。たとえば「animals」「util」「io」のように、小文字のみで構成するのが一般的です。
パッケージの作成例
まず、次のような「Animal」というインターフェースを含むパッケージを作成します。
/* ファイル名 : Animal.java */
package animals;
interface Animal {
public void eat();
public void travel();
}
package animals; という宣言により、このファイルが「animals」パッケージに属することを示しています。インターフェースには eat() と travel() という2つのメソッドが定義されています。
インターフェースの実装
続いて、同じ「animals」パッケージ内に、先ほどのインターフェースを実装するクラスを作成します。
/* ファイル名 : MammalInt.java */
package animals;
public class MammalInt implements Animal {
public void eat() {
System.out.println("Mammal eats");
}
public void travel() {
System.out.println("Mammal travels");
}
public int noOfLegs() {
return 0;
}
public static void main(String args[]) {
MammalInt m = new MammalInt();
m.eat();
m.travel();
}
}
MammalInt クラスは implements Animal によって Animal インターフェースを実装しており、eat() メソッドと travel() メソッドの具体的な処理を定義しています。main メソッドでは、自クラスのインスタンスを生成し、各メソッドを呼び出しています。
Javaファイルのコンパイル
作成したJavaファイルを、以下のコマンドでコンパイルします。
$ javac -d . Animal.java $ javac -d . MammalInt.java
ここで使用している -d オプションは、生成されたクラスファイル(.classファイル)の出力先ディレクトリを指定するものです。「.(ドット)」を指定すると、現在のディレクトリが基準となります。
コンパイルが完了すると、現在のディレクトリに「animals」という名前のフォルダ(パッケージディレクトリ)が自動的に作成され、その中にクラスファイルが配置されます。ディレクトリ構造は以下のようになります。
.
└── animals
├── Animal.class
└── MammalInt.class
パッケージ内プログラムの実行
パッケージ内のクラスファイルを実行するには、以下のように「パッケージ名.クラス名」の形式で完全修飾名(FQCN)を指定します。
$ java animals.MammalInt
実行すると、以下の出力結果が得られます。
Mammal eats Mammal travels
まとめ
Javaのパッケージを活用することで、関連するクラスやインターフェースをひとまとめに管理でき、名前の衝突も防止できます。押さえておきたいポイントは以下の3つです。
- パッケージ名は小文字で命名するのが慣習
javac -d .でコンパイルすると、パッケージ構造に沿ったディレクトリが自動生成される- 実行時は
java パッケージ名.クラス名の形式で完全修飾名を指定する
-
【保存版】Windows 10でJARファイルを実行する方法と開けない時の対処法
JARファイルは「Java ARchive(Javaアーカイブ)」の略称で、Javaプログラム(Javaクラスファイル、メタデータ、リソースなど)を格納したファイル形式です。ZIPファイル形式に似たパッケージ形式であるため、複数のファイルを1つにまとめる用途にも使われ、ファイルの持ち運びやすさの向上やディスク容量の節約にも役立ちます。この汎用性の高さから、ゲーム、アプリケーション、ブラウザ拡張機能などを格納するために幅広く活用されています。 ただし、すべてのJARファイルが同じというわけではありません。EXEファイルのように実行することを目的としたものもあれば、ZIPファイルのように展開(解凍
-
Windows起動時にレジストリを使ってプログラムを自動実行する方法【10/8/7対応】
前回の記事では、Windowsのスタートアップフォルダにプログラムを配置することで、Windows 10の起動時に任意のプログラムを自動実行する方法をご紹介しました。今回は、レジストリを使用して、Windows起動時に任意のプログラムを実行させる方法を解説します。 レジストリを使ったスタートアップ登録は、ユーザーにPCの設定を勝手に変更されたくない場合などによく使われる方法です。スタートアップフォルダと違い、設定が目につきにくいため、意図しない変更を防ぎやすくなります。 関連記事: スタートアップフォルダを使ってWindows 10の起動時にプログラムを追加する方法 Windows 10/