支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡

  • TOP
  •   
  • コラム
  •   
  • 【Java】コンパイルと実行

Javaのコンパイル方法について

Javaコードは、Javaの実行環境である「JVM」によって実行されます。ですが実行を行う前にソースコードをclassファイルへ「コンパイル」する必要があります。 classファイルはJVMが解釈できる形式の、「0」と「1」からなるバイト形式で構成されています。 まず、ファイルをコンパイルする時のために作成するソースファイルの名前には、拡張子を「.java」 にする必要があります。 その後、コンパイルを行いますが、コンパイルはjavaのコンパイルツールであるjavacコマンドを使用することで行います。 また、コンパイルはjavaの開発キットである「JDK」をインストールしておく必要があります。なぜならjavacツールはJDKに同梱されているからです。 javacコマンドの構文は以下の通りです。

  javac ソースファイル名

コンパイルが必要なプログラミング言語はたくさんありますが、Javaは少し特殊になります。 Javaは「OS依存しない」という特徴があります。 Windows、Mac、Linux関係なくプログラムさえ記述すればで動作することができますが、 そのため、特定のコンピュータが理解可能な「機械語」に変換するのではなくて、 どのコンピュータでも理解できる「中間言語」を作成します。

【サンプルコード】Javaのコンパイル

1. public class HelloJava {
2.  
3.  public static void main(String[] args) {
4.  
5.  //コンソールに"HelloJava"と出力する
6.  System.out.println("HelloJava");
7.  
8.  }
9. }

上記、コードが記述されたHelloJava.javaファイルを作成し保存します。 その後、コマンドプロンプトで以下を入力し実行します。
  javac HelloJava.java

コンパイル後、エラーメッセージの表示がなければコンパイル完了で、HelloWorld.classファイルが作成されます。

Javaの実行方法について

Javaファイルの実行はコンパイルが成功して、classファイルが作成されたら可能となります。 下に記したコードは実行時のコマンドの構文です。 実行時の注意点としてjavaコマンドの後に記述するJavaファイル名には「.java」や「.class」などの拡張子がコンパイルの場合とは異なり不要となります。

  java Javaファイル名

【サンプルコード】Javaの実行

1. public class HelloJava {
2.  
3.  public static void main(String[] args) {
4.  
5.  //コンソールに"HelloJava"と出力する
6.  System.out.println("HelloJava");
7.  
8.  }
9. }

コンパイル

javac HelloJava.java

コンパイル後の実行

java HelloJava

実行結果

HelloJava

実行できない場合の対処

原因

Javaファイル名の指定が異なっている。
ソースコードの記述、文法が間違っている。

Javaファイル名の指定が異なる。

コマンドプロンプトで実行する場合、Javaファイル名の指定には「.java」「.class」などの拡張子は不要です。 Javaファイル名に相違がないか、拡張子まで入力いないか確認する必要があります。

ソースコードの記述、文法の間違い。

ソースコードの記述に誤りがある可能性があるため、ソースコードをもう一度確認する必要があります。

Javaのコンパイル及び実行方法の練習問題

1. public class HelloSample {
2.  
3.  public static void main(String[] args) {
4.  
5.  //コンソールに"HelloJava"と出力する
6.  System.out.println("HelloJava");
7.  
8.  }
9. }

上記のコードを実行する為に適切なコマンドはどれですか。1つ選択してください。


A. javac Hello.java
B. javac HelloSample.java
C. java Hello
D. java HelloSample

Javaのコンパイル及び実行方法の解説

javaコマンドを使用し、クラス名であるHelloSampleのみを指定しているため正常に実行できます。よって正解は「E」です。

【Java】コンパイルと実行についてのまとめ

いかがでしたでしょうか。Javaのソースコードの動作するためにはコンパイル及び実行する必要があります。 正しくコンパイル及び実行ができればJavaは「OS」に依存することなく動作することが可能なので、とても優秀なプログラミング言語といえるでしょう。 みなさんの中でご興味がある方は一度、Javaを使用しソースコードを記述してみてはいかがでしょうか。