Java入門|Javaコードのしくみ

以下に、ご希望の条件に合わせて、親しみやすくやわらかい口調で記事案を作成します。

Javaのコードはむずかしく見えても大丈夫。しくみを順番に見ていけば、動き方がすっきりわかる

Javaのプログラムは、ただ文字が並んでいるだけのものではありません。そこには、どこから処理が始まり、どの順番で命令が実行され、どのように結果が画面に表れるのかという、きちんとしたしくみがあります。

最初のうちは、コードを見ても、何がどこで動いているのかがわかりにくく感じるかもしれません。ですが、プログラム全体をいきなり理解しようとしなくても大丈夫です。大切なのは、まずコードの流れを上から順に追いながら、どの部分がどんな役割を持っているのかをひとつずつ確認していくことです。

特にJavaでは、mainメソッドから処理が始まり、文が順番に実行されていくという基本の流れを理解することが、とても大切です。このしくみがわかると、画面出力だけでなく、今後学んでいく変数、条件分岐、繰り返しといった内容もぐっと理解しやすくなります。

ここでは、Sample1.java を題材にしながら、Javaコードの中でどこから処理が始まるのか、文はどのように実行されるのか、そして読みやすいコードを書くために改行やインデントがなぜ大切なのかを、丁寧に見ていきましょう。

まずは Sample1.java の全体を見てみよう

これまでに学んだ画面出力のプログラムには、Javaの基本的なしくみがたくさん詰まっています。まずは、コード全体をもう一度確認してみましょう。

ファイル名:Sample1.java

// 画面にメッセージを2行表示するプログラム
class Sample1
{
    public static void main(String[] args)
    {
        System.out.println("おはようございます。");
        System.out.println("今日もJavaを学んでいきましょう。");
    }
}

このコードは一見すると短いですが、Javaのプログラムがどのように動いていくのかを学ぶうえで、とても重要な要素が入っています。

ここで知りたいのは、次のようなことです。

  • 処理はどこから始まるのか
  • どこまでが実行される範囲なのか
  • どの順番で命令が動くのか
  • なぜ改行や字下げが入っているのか

これらをひとつずつ見ていくと、コードがぐっと読みやすくなります。

Javaの処理はどこから始まるのか

Javaのプログラムでは、原則として mainメソッド から処理が始まります。

それが次の部分です。

public static void main(String[] args)

この行は、Javaにとって特別な意味を持つ部分です。プログラムを実行すると、Javaはまずこの main という名前のついた場所を探し、そこから処理を始めます。

最初の段階では、public や static や void という言葉の細かい意味まで無理に覚えなくても大丈夫です。今いちばん大事なのは、Javaは mainメソッド からスタートする、ということです。

この考え方は、これから先もずっと使います。プログラムが動き始める入口だと思っておくとわかりやすいです。

mainメソッドはどこからどこまでか

mainメソッドは、次のように中カッコで囲まれた部分全体を指します。

public static void main(String[] args)
{
    System.out.println("おはようございます。");
    System.out.println("今日もJavaを学んでいきましょう。");
}

このように、{ から始まり、対応する } で終わるひとまとまりを ブロック と呼びます。

Javaでは、このブロックがとても大切です。どこからどこまでがひとつのまとまりなのかを、はっきり示してくれるからです。

main がついたこのブロックは、特別に mainメソッド と呼ばれます。今は、メソッドというのは処理のまとまりのことだと、やわらかく理解しておけば十分です。

つまり、このプログラムでは、mainメソッドの中に書かれた命令が実行され、そのブロックの終わりまで来たらプログラムも終了します。

コードの流れを順番に追ってみよう

それでは、実際にこのプログラムがどのように実行されるのか、流れに沿って見てみましょう。

プログラムが実行されると、まず mainメソッド が見つけられます。
そのあと、mainメソッドの中に書かれている文が、上から順番に1つずつ実行されます。

今回の Sample1.java では、次の順番で処理されます。

1つ目に実行される文

System.out.println("おはようございます。");

2つ目に実行される文

System.out.println("今日もJavaを学んでいきましょう。");

その結果、画面には次のように2行表示されます。

おはようございます。
今日もJavaを学んでいきましょう。

このように、Javaの文は原則として先頭から順番に処理されます。これが、Javaコードの動きを理解するためのとても大切な基本です。

文とは何かを知っておこう

Javaでは、ひとつひとつの小さな処理の単位を 文 と呼びます。

たとえば、次の1行は1つの文です。

System.out.println("おはようございます。");

そして、Javaの文の多くは、最後に ; をつけて終わります。この ; はセミコロンと呼ばれ、ここで1つの文が終わりですよ、という印になります。

文について整理すると、次のようになります。

項目内容
Javaの処理の最小単位のひとつ
文の終わり多くの場合 ; をつける
実行順序原則として上から順番に実行される

たとえば、mainメソッドの中に文が3つあれば、上から1つ目、2つ目、3つ目という順番で実行されるのが基本です。

この考え方はとても重要です。後で条件分岐や繰り返しを学ぶときも、基本はこの 文 がどう並び、どう実行されるかを考えることになります。

なぜ2行のメッセージが表示されるのか

Sample1.java では、println を使った文が2つあります。

System.out.println("おはようございます。");
System.out.println("今日もJavaを学んでいきましょう。");

1つ目の文が実行されると、最初のメッセージが画面に表示されます。
次に2つ目の文が実行されると、2つ目のメッセージが表示されます。

println は、表示したあとに改行する命令でした。そのため、1つ目の文の結果は1行目に表示され、2つ目の文の結果は次の行に表示されます。

つまり、2行表示されるのは、文が2つあり、それぞれが順番に実行され、しかも println が改行を行うからです。

コメントは処理されない説明文

プログラムの先頭には、次のような行があります。

// 画面にメッセージを2行表示するプログラム

これは コメント です。コメントは、プログラムの説明を書くための文であり、コンピュータが実行する命令ではありません。

コメントの役割は、人がコードを読みやすくすることです。たとえば、何をするプログラムなのか、どの部分が重要なのか、どういう意図で書いたのかをメモとして残せます。

コメントについて簡単に整理すると、次のようになります。

記述役割
// から始まる行コメントとして扱われる
実行されるか実行されない
主な目的人が読みやすくするための説明

学習中は特に、コメントを使って自分用のメモを書いておくと理解が深まりやすいです。

この図のポイントは、処理が上から下へ順番に進むことが視覚的にわかるところです。Javaの基本では、mainメソッドの中の文は、原則として並んでいる順に実行されます。

最初のうちは、コードの見た目に圧倒されてしまいがちですが、このように流れとして見れば、やっていることは意外と素直です。Javaは、まず開始地点に入り、その中の命令を順番に実行していくのだ、という感覚を身につけるのに役立ちます。

ブロックは処理のまとまりを表す

Javaでは、中カッコ { } で囲まれた部分をブロックと呼びます。ブロックは、処理のまとまりを表すために使われます。

Sample1.java では、少なくとも次の2つのまとまりを意識するとよいです。

  • class Sample1 のブロック
  • mainメソッド のブロック

見た目で表すと、こんなイメージです。

class Sample1
{
    public static void main(String[] args)
    {
        文
        文
    }
}

外側にクラスのまとまりがあり、その中に mainメソッド のまとまりがあります。つまり、Javaのコードは、箱の中にさらに箱があるような構造になっているのです。

この入れ子の構造に慣れると、コード全体の見通しがよくなります。

ブロック構造を図で理解しよう

この図では、Javaのコードがただ横に並んでいるのではなく、意味のあるまとまりごとに構成されていることがわかります。特に初心者の方は、どの } がどこに対応しているのかで迷いやすいので、ブロックを箱としてとらえると理解しやすくなります。

mainメソッドの中に文があり、その mainメソッド がクラスの中に入っている、という構造を意識しながらコードを読むと、だんだん見やすくなっていきます。

文は上から順番に処理される

Javaの基本では、文は原則として先頭から順番に、1文ずつ処理されます。これをしっかり理解するために、表示順を変えた場合も考えてみましょう。Sample1.java を以下のように修正します。

ファイル名:Sample1.java

// 実行順序の違いを確認するプログラム
class Sample1
{
    public static void main(String[] args)
    {
        System.out.println("今日もJavaを学んでいきましょう。"); ← 最初に実行されます
        System.out.println("おはようございます。");  ← 次に実行されます

    }
}

この場合は、画面には次の順番で表示されます。

今日もJavaを学んでいきましょう。
おはようございます。

当たり前に見えるかもしれませんが、これはとても重要な性質です。プログラムは、書いた順に処理が進むからこそ、意図した動きになります。

今後、より長いコードを書くようになると、この順番の考え方がますます重要になります。

改行してもよいのは、読みやすくするため

Sample1.java の mainメソッドは、1行に全部詰め込まず、複数行に分けて書かれています。

これは、Javaではコードの読みやすさを高めるために、適切な場所で改行してよいことになっているからです。

たとえば、次のように1行で無理に書くこともできなくはありません。

class Sample1 { public static void main(String[] args) { System.out.println("おはようございます。"); System.out.println("今日もJavaを学んでいきましょう。"); } }

でも、これではとても読みにくいです。どこがクラスで、どこが mainメソッド で、どこに文があるのかが一目でわかりません。

そこで通常は、ブロックの区切りごとに改行し、見やすい形に整えます。

インデントは読みやすさのための大切な工夫

コード中で、行頭を少し下げて書くことを インデント といいます。

Sample1.java では、mainメソッドの中の文が少し右に下がって書かれています。

class Sample1
{
    public static void main(String[] args)
    {
        System.out.println("おはようございます。");
        System.out.println("今日もJavaを学んでいきましょう。");
    }
}

この字下げがあるおかげで、どの文が mainメソッド の中にあるのかが、とてもわかりやすくなっています。

インデントの役割を表にすると、次のようになります。

インデントの役割内容
ブロックの内側を見やすくするどこがまとまりの中身かがわかる
コードの構造をつかみやすくする入れ子関係が見やすくなる
読み間違いを減らす対応する { } を見つけやすい

Javaでは、空白や改行はプログラムの意味そのものを変えない場合が多いですが、読みやすさには大きく影響します。学習が進むほど、見やすいコードを書く習慣がとても大切になってきます。

空白や改行にはルールと自由さがある

Javaでは、意味のつながった言葉の途中で分けてしまうのはよくありません。たとえば、public を途中でばらばらにして書くのは正しくありません。

一方で、言葉と言葉の区切りや、ブロックの区切りでは、空白や改行を入れて読みやすくできます。

つまり、Javaのコードには、好き勝手に書いてよいわけではないけれど、読みやすさのための工夫ができる余地がある、ということです。

この感覚は、これからコードを書くうえでとても大切です。コンピュータが理解できるだけでなく、人にも読みやすいコードを書くことを意識していきましょう。

出力する文字列の中では勝手に改行できないことにも注意しよう

コードそのものは、読みやすさのために改行できますが、文字列の中では自由に改行できません。

たとえば、次のように文字列の途中でそのまま改行してしまうと、正しい書き方になりません。

System.out.println("おはよう
ございます。");

文字列は、開始の " から終了の " までをひと続きで書く必要があります。

この点は、コードの改行と、表示したい文字の改行を混同しやすいところなので、最初のうちに意識しておくと安心です。

コードを読むときの見方を身につけよう

Javaコードを読むときは、いきなり細かい意味を全部追うよりも、まず次の順番で見ると理解しやすいです。

見るポイント確認する内容
クラス名どのプログラムなのか
mainメソッドどこから処理が始まるか
ブロックどこまでがひとまとまりか
どんな命令が並んでいるか
実行順序上からどの順番で動くか

この順番で見ていくと、コードの流れがかなりつかみやすくなります。最初は短いサンプルでも、こうした見方を意識することで、今後もっと長いコードを読む力につながっていきます。

Javaコードは見た目の整理も大切

プログラムは、動けばそれでよいというものではありません。もちろん正しく動くことは大前提ですが、それと同じくらい、読みやすく書くことも大切です。

特にJavaでは、ブロック構造が多くなりやすいため、改行やインデントが乱れていると、どこからどこまでが同じまとまりなのかが見えにくくなってしまいます。

今のうちから、次のことを意識しておくとよいでしょう。

  • ブロックの始まりと終わりをそろえる
  • ブロックの中はインデントする
  • 文ごとに見やすく改行する
  • コメントを使って意図を補足する

こうした書き方は、将来ほかの人にコードを見せるときにも、とても役立ちます。

Javaコードのしくみを理解すると次の学習が楽になる

ここまで見てきた内容は、Javaの最も基本的な動きです。mainメソッドから始まること、文が順番に実行されること、ブロックでまとまりを表すこと、そして読みやすくするために改行やインデントを使うこと。これらがわかると、コードをただ写すだけではなく、動きの意味を考えながら読めるようになります。

Javaの学習では、この 土台の理解 がとても大切です。これがしっかりしていると、次に変数や計算、条件分岐などを学んだときにも、コードの流れを自然に追いやすくなります。

見た目は少し堅く感じるJavaのコードですが、しくみを順番に見ていけば、ひとつひとつは決して難しすぎるものではありません。まずは Sample1.java のような短いコードを何度か読み返しながら、どこから始まって、どの順に動いて、どこで終わるのかをしっかりつかんでいきましょう。