プログラミングの
初歩の初歩
準備編では、まずJavaのプログラムを動かしてみました。今回は、そのソースコードについて、最初の段階で分かっておくべきことだけを説明します。
いきなり意味の分からないアルファベットの羅列を見せられると、嫌になってしまいますよね。でも、最初から全部理解する必要はありません。まずは「どこに、何を書いているのか」を見ていきましょう。
ブロックとは?
前回の準備編で作った Main.java を、もう一度見てください。
public class Main {
public static void main(String[] args) {
System.out.println("Hello, Java!");
}
}最初に注目するのは、アルファベットではなく { }(波カッコ)です。ここでは、この波カッコで囲まれたひとまとまりをブロックとして見ていきます。
外側の緑色の波カッコの中に、内側の青色の波カッコがあります。このように、あるまとまりの中に別のまとまりが入っている構造を入れ子構造と言います。
波カッコは、開く { と閉じる } が一組です。どの波カッコとどの波カッコが対応しているのか、指でたどってみてください。
classの中身を書くブロック
まず、外側だけを取り出すと、こうなります。
Main.java
public class Main {
// ここにMainクラスの中身を書く
}class(クラス)は、Javaのプログラムを組み立てる単位の一つです。その後ろにある Main が、このクラスの名前です。
つまり、public class Main に続く波カッコは、「Mainという名前のクラスの中身を、ここに書きますよ」という範囲を表しています。
クラスの詳しい意味は、後の講座で説明します。今は「クラスという外枠がある」と考えておけば大丈夫です。先頭の public も、今は気にしなくて構いません。
コード例の // から行末までは「コメント」です。人が読むためのメモで、プログラムの命令としては実行されません。
mainメソッドのブロック
続いて、クラスの中にある、内側の波カッコを見てみましょう。
Main.java
public class Main {
public static void main(String[] args) {
// ここに実行したい処理を書く
}
}public static void main(String[] args) と、それに続くブロックで、main(メイン)メソッドを定義しています。メソッドとは、ひとまとまりの処理に名前を付けたものだと考えてください。
この形のプログラムでは、実行すると mainメソッドの中の処理が始まります。 これからしばらくは、この内側のブロックに、実行したい処理を書いていきます。
public、static、void、String[] args の意味を、今すべて理解する必要はありません。この講座では、まずこの形を使います。何度か自分で打って、形に慣れていきましょう。
行の先頭を少し右にずらしているのは、中に入っていることを見やすくするためです。これをインデント(字下げ)と言います。今回のコードで範囲を決めるのは字下げではなく波カッコですが、読みやすくするために字下げもそろえましょう。
画面に文字を出力する
では、前回のmainメソッドには、どんな処理が書かれていたでしょうか。
Main.java
System.out.println("Hello, Java!");これは、「Hello, Java!という文字列を出力しなさい」という処理です。出力先は、IntelliJ IDEAの画面下部にあるコンソールです。
System.out.println(...) は、出力を行うメソッドの呼び出しです。System や out の詳しい意味は後で学ぶので、まずは「カッコの中に書いた文字列を出力できる」と覚えてください。
ここで、二つの記号にも注目しましょう。
" "(ダブルクォーテーション):文字列を囲みます。この記号自体は出力されません。;(セミコロン):このような命令文の終わりに付けます。すべての行の末尾に付けるわけではなく、今回のクラスやmainメソッドの波カッコの後には付けません。
コードの記号は半角で入力します。特に " と、文章で使う “ や ” は別の文字なので注意してください。
文字を書き換えてみよう
Main.java の Hello, Java! の部分を こんにちは に書き換え、緑色の▶から「Main.main() を実行」を選んでください。
Main.java
public class Main {
public static void main(String[] args) {
System.out.println("こんにちは");
}
}コンソールに表示される文字も変わります。
こんにちはこのように、ソースコードを書き換えると実行結果も変わります。読むだけでなく、自分の好きな言葉に変えて動かしてみてください。
命令を二つ書くと?
次はmainメソッドの中を、次の二行にしてみましょう。
Main.java
System.out.println("こんにちは");
System.out.println("Javaを勉強しています。");この二つの文は上から順に実行され、それぞれの出力の後に改行されます。
こんにちは
Javaを勉強しています。printとprintlnの違い
print という名前のメソッドも、文字を出力するメソッドです。println との違いは、出力の後に改行するかどうかです。
Main.java
System.out.print("こんにちは");
System.out.print("Javaを勉強しています。");こちらは改行せず、続けて出力されます。
こんにちはJavaを勉強しています。プログラムを書くための枠
ここまでのコードは、Mainというクラスのmainメソッドの中に、「文字を出力しなさい」という処理を書いていたわけです。なんとなく構造が見えてきたでしょうか。
Main.java
public class Main {
public static void main(String[] args) {
// ここに、いろいろな処理を書いていこう!
}
}プログラミングを理解するコツは、なんとなく分かりながら、実際に書いて動かしてみることです。書き直したり、結果を確かめたりしているうちに、「ああ、そういうことか」とつながってきます。
次は「変数」を使って、もう少しプログラミングらしいことをしてみましょう。
質問・コメント
読み込み中この記事についての質問や、学習して気づいたことをお寄せください。
この記事のコメント
旧サイトに寄せられたコメントも当時の投稿内容のまま掲載しています。現在の記事では変更している内容や、旧環境についてのやり取りも含まれます。
コメントを読み込んでいます。