今回はJavaプログラムの基本的な書き方を解説します。
そもそもJavaってなんだろうと言う場合は下記の記事を参照見てください。
プログラムの基本的な構造
Javaプログラムの基本構造を見ていきます。
Javaでは「クラス」と呼ばれるプログラムが基本単位となりますので、Javaでプログラムを記述するには、まずクラスを作成します。
クラスは「class」というキーワードを使用します。
プログラムは基本的に半角英数字で記述します。
Javaは大文字、小文字も区別します。
class HelloJava {
}
classキーワードの後ろに半角スペースをあけて、クラスの名前を記述します。
次に { } を記述します。
{ } の間にプログラムを記述していきます。
このプログラムはまだ何も動きません。
次に処理させたい命令を記述していきます。
処理命令は「メソッド」と呼ばれます。
メソッドはクラスの中に記述します。
メソッドもクラスと同様 { で始まり } で終了します。そしてこのメソッドの中に様々な処理命令を記述していきます。
class HelloJava {
メソッド {
さまざまな処理命令
}
}
メソッドには様々な種類がありますが、Javaプログラムを実行するのに必要なのが「mainメソッド」です。
mainメソッドは次のように記述します。
class HelloJava { public static void main(String[] args) { さまざまな処理命令 } }
ポイント! エントリポイント
Javaではプログラムの開始点や実行順序を、mainメソッドから始めて、mainメソッドの中に記述されている命令処理を、記述されている順に実行していきます。
つまり「mainメソッドからプログラムが開始する」と考えてください。
この「プログラムの開始地点」をエントリポイントと呼びます。
最も基本的なJavaプログラムの構造は次のようになります。
class クラス名 {
メソッド名( ) {
さまざまな処理
}
}
[動画解説]
vimeo.com
プログラムの記述から実行まで
Javaにおけるプログラムの記述方法、コンパイルの仕方、実行方法をみていきましょう。
【STEP1】
テキストエディタを起動します。
【STEP2】
テキストエディタが起動したことを確認し、1行目から以下のように入力を行います。
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World, I am Taro"); } }
ポイント
行頭の数字とピリオド(.)は入力する必要はありません。
ソースファイル(プログラムコード)が見やすいように行番号を付けているだけであり、実際のプログラムには不要なのものです。
【STEP3】
以下の通りに名前を付けて保存します。
保存先ディレクトリ | ファイル名 |
---|---|
任意 | HelloWorld.java |
【STEP4】
作成したプログラムをコンパイルしますのでMacの場合は「ターミナル」、Windowsの場合は「コマンドプロンプト」を起動します。
【STEP5】
cdコマンドを使用してソースファイルが保存されているディレクトリに移動します。
ターミナルまたはコマンドプロンプト上で次のように入力をし、 Enter キーを押します。
ターミナル(MacOS)の場合
コマンドプロンプト(Windows)の場合
【STEP6】
ディレクトリの中にソースファイルがあることを確認します。
確認するためにMacの場合は「ls」、Windowsの場合は「dir」コマンドを利用します。
HelloWorld.javaファイルが保存されていることを確認します。
ターミナル(MacOS)の場合
コマンドプロンプト(Windows)の場合
【STEP7】
javacコンパイラでHelloWorld.javaファイルをコンパイルします。
以下のコマンドを入力し、Enterキーを押します。
javac HelloWorld.java
用語:コンパイル
「コンパイル」とは、人間が理解できる形式からコンピュータが理解できる形式にプログラムを変換する作業の事です。
人間が理解できる形式とは、先ほどテキストエディタに記述したソースコードの事です。
そして、コンピュータが理解できる形式とは、人間には意味不明な数値の集まりとなります。
Javaでは、プログラムをコンパイルするとクラスファイル(.class)が生成され、このクラスファイルが、仮想マシン(コンピュータ)が理解できる形式に変換されたファイルとなります。
【STEP8】
下図のように、ターミナル(コマンドプロンプト)に表示されたことを確認します。
ポイント! コンパイルエラー
記述したソースファイルに誤りがあると、下図のように問題箇所を指摘してくれます。
指摘された問題箇所を確認してソースファイルをテキストエディタで修正してください。
このような、問題箇所があるためにコンパイルができないことを「コンパイルエラー」と呼びます。
【STEP9】
コンパイルを行うと、同じディレクトリ内にHelloWorld.classファイルが生成されますので、再度、「ls」コマンド(「dir」コマンド)で確認します。
以下のように入力を行い、Enterキーを押します。
[Finderで確認した場合]
【STEP10】
JavaVMにクラスファイルを渡してプログラムを実行させます。
以下のコマンドを入力し、 Enter キーを押します。(拡張子の部分(.class)は省略します。)
java HelloWorld
【STEP11】
下図のように、「Hello World, I am Taro」というメッセージが出力されたことを確認します。
ポイント! javacコマンドとjavaコマンド
javacコマンドやjavaコマンドはJDKに付属されている開発、実行環境を構成するコマンドです。
javacコマンドがコンパイルを行い、クラスファイルを作成するのに対して、javaコマンドはクラスファイルを元に実行を行います。
javacコマンド、javaコマンドはほぼ同じように使うことができますが、注意が必要な点として、javacコマンドを利用する際は、
$ javac HelloWorld.java
とファイル名の最後にあるファイルの拡張子「.java」をつけたのに対して、javaコマンドはクラスファイル名の拡張子「.class」をつけません。
$ java HelloWorld
これは、javacコマンドではコンパイルする「ファイル名」を指定するのに対して、javaコマンドでは実行する「クラス名」を指定するためです。
[動画解説]
vimeo.com
HelloWorldプログラムの解説
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World, I am Taro"); } }
上記のプログラムでは文字列(文字が連続したもののことです)の表示が終わればプログラムが終了します。
ポイント! System.out.println(・・・・・);
System.out.println はコマンドプロンプトに括弧”(” ”)”で囲まれた文字やデータに改行をつけて書き出す処理を表しています。
今回はコマンドプロンプトに”Hello World, I am Taro”という文字列を表示します。
ポイント! 処理の最後にあるセミコロンについて
処理を表す命令の最後は、命令の終わりを表す”;(セミコロン)”を必ず記述します。
[動画解説]
vimeo.com
プログラム記述上の注意
プログラムを記述する上で特に重要なのは、ソースファイルを記述するファイル名は必ずクラス名.javaという名称にするという点です。
その際、大文字、小文字も合わせる必要があります。
今回の作成したソースコードの場合、1行目に書いてあるクラス名が
public class HelloWorld {
ですので、ファイル名も「HelloWorld.java」として、保存します。
また、Javaでは大文字、小文字の区別をします。
さらに全角、半角も区別しますのでファイル名には必ず半角で入力してください。
また、ソースコードはコメント部分、文字データ部分の日本語以外は全て半角です。
さらに、複雑なプログラムを書いていくと、プログラムの処理内容がわかりにくくなるなどの問題点がどうしても発生します。
このとき、プログラムの補足説明として、「ソースファイルにコメントを書く」ことが理解の助けになり、後々のプログラムの修正等で非常に役に立ちます。
Javaプログラムでコメントを記述する形式には3つあります。
- // から行末まで書く形式
- /* から */ までの間(複数行でもよい)にコメントを書く形式
- /** から */ までの間(複数行でもよい)にコメントを書く形式(Javadocコメント)
ポイント! コメントとは
コメントとはプログラム内に記す注釈の事です。
ソースコードにおいてどんなことを行っているのか、処理の役割などを記述しておく事で、そのソースコードを第三者が見た場合や、あとで自分が見直した時に、コードの処理を把握しやすくなります。
ソース上にただ単に説明文を書いてしまうとコンパイラによってチェックされる対象となってしまいますので、上記の形式を用いて記述します。
そうすることでコンパイラはコメントをコンパイルする対象から外してくれます。
以下にコメントを入れた例を示します。
3行目にコメントを入れてあります。
ソースコードを記述する際には適切にコメントを入れる習慣をつけておきましょう。
public class HelloWorld { public static void main(String[] args) { // コマンドプロンプトに表示 System.out.println("Hello World, I am Taro"); } }
ポイント! クラス名とファイル名の補足
クラスにはpublicクラスと呼ばれる形態のクラスがあります。
この形態のクラスは保存する時、クラス名とファイル名を同じにする必要があります。
また慣習として、1つのクラスを1つのファイルに作成します。
これは、「ファイル名がクラス名と同一であればそのクラスを探し出すのが楽になる」ためです。
[動画解説]
vimeo.com
まとめ
プログラムの記述から実行まで
1.ソースコードの記述
2.javacコマンドによるコンパイル
3.javaコマンドによる実行
4.動作確認
エントリポイント
プログラムはmain( )メソッドからはじまり、main( )メソッドの事をエントリポイントと呼びます。
プログラム記述上の注意点
- クラス名とファイル名は同じにします。
- アルファベットの大文字と小文字は区別します。
- プログラムを後で見直してもわかるように、コメントを書く癖をつけましょう。
独学で挫折しそうになったら、オンラインプログラミングスクール