Javaプログラミングのやり方
今年度のSZPPではJavaについて解説します。 すでに普通高校の授業でもプログラミングを行ったことがあるかもしれませんが、高校で採用されているであろう「Python」とは書き方や実行方法が異なります。
Javaでのプログラミングの流れ
- ファイルの作成
- プログラムを書く
- プログラムをコンパイルする
- プログラムを実行する
今回の講座では「Hello, world!」という文字列をコンソールに表示するプログラムの作成を通して、これらの各ステップについて理解してもらいます。
よくわからないところがあったり、作業中にエラーが出たりしたら周りのメンバーに遠慮なく聞いてね!
1. ファイルの作成
プログラムを作成するためにはまずプログラムを書くためのファイルを用意しなければいけません。
ITキモオタクの前でGUI(マウスとかクリック使うやつ)でファイル作ると「ダサい」とか言われてダルいためCUI(コマンド)でのファイル作成方法について教えます。
WSLを開き、以下のコマンドを実行してください。
touch Main.javaこれだけでファイルを作成できます。簡単!
本当に作れているか心配な人はlsコマンドを実行して確認することができます。
2. プログラムを書く
コードを書くためにまず作成したMain.javaファイルをVSCodeで開きましょう。
以下のコマンドを実行してください。
code Main.javaJavaの基本構文
まずは開いたファイルに以下のコードを書いてください。(コピペでもいいよ)
public class Main {
public static void main(String[] args) {
/* ここからコードを書く */
}
}これからJavaでプログラムを書くときにはまずはこれを書くようにしましょう。
また、これ以外のコードは後々説明する「import文」を除きすべてここからコードを書くと書かれている行の真下から書くようにしてください。
なぜそうしなきゃいけないのかの説明は省きます。おまじないです。とにかく書かなきゃいけないのです。
これを書く意味がちゃんと分かるようになるのはおそらく1年の冬休み頃です。
おまじないの部分が書けたら以下のコードを追加で書いてください。もちろんここからコードを書くと書かれている行の真下にですよ。
System.out.println("Hello, world!");またなにやら長ったらしい文が出てきましたが、これを書くことによって()の中身をコンソールに出力することができます。
これが書けたらプログラムを書くステップは終了です。
プログラムをコンパイルする
Pythonとかの言語では必要なかった作業ですが、Javaは実行する前に「コンパイル」という作業を挟む必要があります。
以下のコマンドを実行することでコンパイルができます。
javac Main.javaこれだけです。簡単!
実行したらMain.javaがあった場所と同じフォルダにMain.classというファイルができていることを確認してください。(lsコマンドとかでできるよ)
プログラムを実行する
コンパイルが終わったらいよいよ実行ステップに入ります。
以下のコマンドを実行してください。
java MainコンソールにHello, world!と出力されれば成功です!お疲れ様でした!
余談
ここから先はちょっとした小話をします。できる限り読んでほしい…
ファイル名について
今回Main.javaという名前のファイルを作りましたが、必ずしも毎回この名前である必要はありません。〇〇.javaという形式のファイル名ならなんでもいいです。Hogehoge.javaでもPractice1.javaとかでもいいです。
ただし、数字から始まる名前はNGです(実行するときにエラーが出ます)
また、可能な限りファイル名の先頭は大文字にするようにしてください。
public class Mainについて
今回のファイル名がMain.javaだったためこの書き方になりましたが、public class MainのMainの部分はファイル名に合わせてください。
例えば、Practice.javaというファイルにプログラムを書く場合はpublic class Practiceと書きます。
コンパイルって一体何?
「コンピュータは0と1しか理解できない」みたいな話を聞いたことはないでしょうか?
私たちが書くJavaなどの「プログラミング言語」は人間が読みやすいように書かれているため、そのままではコンピュータは一体どんなプログラムなのか理解することができません。
そこで、「プログラミング言語」 → 「コンピュータが理解できる言葉(『機械語』という)」に翻訳する作業が必要になります。これがコンパイルです。
Javaの場合、〇〇.classといういわゆるclassファイルを作ることで、コンピュータがプログラムの内容を理解できるようになります。
標準出力
これは後に解説する「標準入力・出力」の予習みたいなものです。
今回書いたSystem.out.println()という文は、()の中身をコンソールに表示することができます。このように、コンソールに表示することができるプログラムのことを「標準出力」と呼びます。
実はJavaには標準出力の方法にも色々種類があります。
System.out.println()⋯ 自動で改行ありSystem.out.print()⋯ 自動で改行なしSystem.out.printf()⋯ フォーマットを指定して出力できる
例:これでも「Hello, world!」を出力できます。\nは改行文字といいます。javaSystem.out.printf("%s, %s\n", "Hello", "world!");
コード書くのをサボれるショートカット
Javaはなにかと書く量が多くなってめんどくさいです。
そこで便利なショートカットを紹介します。
- 「
mainと打ってTabキー」 ⋯ これだけでpublic static void main(String[] args)が打てます。 - 「
sysoutと打ってEnterキー」 ⋯ これだけでSystem.out.println()が打てます。