【Java入門 01】初めてのJavaプログラム Hello, World!を実行しよう

プログラミング

Javaを始めるとき、多くの人が「Hello, World!」プログラムから学習を開始します。初めてコードを書いてみたい、プログラミング言語としてのJavaの特徴を知りたい、そんな方にはぴったりの題材です。このプログラムでは、基本的なソースファイルの作成やmainメソッドの役割、System.out.printlnによる出力の方法など、開発の基礎となる知識に触れることができます。どのようにJavaファイルを保存してコンパイル・実行すればよいのか、具体的な手順や注意点を解説します。

\ 業界最安級のプログラミングスクール /

はじめに:Hello, World!がなぜ最初の一歩なのかなのか

最初のプログラムとして「Hello World」を出力するプログラムが選ばれる理由は、非常にシンプルでプログラミングや開発環境、プログラムの実行・出力までの一連の流れを実際に体験できるからです。

このプログラムは”世界一有名なプログラム”とも言われており、Javaに限らず多くのプログラミング言語の入門で最初に使われています。シンプルなコードで構造や書き方の基本を学べ、コンパイルや実行、画面への出力までの一連の流れを体感できるので、初心者にとって分かりやすいスタート地点となります。

JavaのHelloWorldプログラムは、たった5行ほどのコードです。その中でもHello Worldを表示しているコア部分がSystem.out.println(“Hello World!!”);となっています。プログラムの設計や開発、mainメソッド、クラス、コマンド、出力、ファイル保存といったプログラミングの基本要素がすべてこの1つのプログラムで学べます。

実際にこのプログラムを作って実行すると、「Hello World!」と画面に出力される経験は、Javaの世界への第一歩としてとても印象的です。こうした学習は、初心者がIT業界で本格的なアプリケーション開発に進む際の礎となるでしょう。今後Javaだけでなく他の言語やツール、コマンドについても興味を持って学んでいくきっかけになります。

ソースコードの書き方

ソースコードを書く場合、エディタや統合環境(IDE)を利用して、テキストファイルとして保存します。Javaの場合は、ソースファイルの名前に注意が必要で、クラス名と同じ名前にするのが基本です。例えばHelloWorldというクラスなら、HelloWorld.javaというファイル名で保存します。

ソースコードはフォルダやディレクトリ内の好きな場所に作成できますが、後で迷わないように、わかりやすい場所にまとめておくのがおすすめです。プログラミングを始めたばかりの頃は、メモ帳などのシンプルなテキストエディタで十分ですが、開発が進んだらEclipseのような本格的な統合開発環境を利用するのも良いでしょう。

コードの編集や記述が終わったら、必ずファイルに保存しておくことが大切です。また、ソースコードの内容を把握しやすくするために、ファイル名やクラス名は分かりやすい名前をつけると良いです。保存場所やファイルの指定はプログラムの実行やコンパイルにも影響するので注意しましょう。

繰り返しコードを書いたり編集したりする中で、記述方法や作成手順に慣れていきます。どの場所にどんなファイルがあるかを整理しながら、少しずつプログラムファイルの取り扱いにも慣れていきましょう。基本的な編集、保存、作成ができるようになると、次のステップにもスムーズに進めます。

サンプルコード

それでは実際に、プログラムを作成してみましょう。テキストエディタを起動し、下記のプログラムを入力してみてください。最初は意味が分からなくても大丈夫ですので、そのまま一字一句間違えずに入力してくださいね。

public class HelloWorld {
    public static void main(String args[]) {
        System.out.println("Hello World!");
    }
}

入力が終わったら、ファイル名を「HelloWorld.java」として保存してください。
また、作成したファイルは、Cドライブの下に「java」という名前のフォルダを作成し、その中に格納しておいてください。

コードの解説

Javaで「Hello World!」と表示するプログラムでは、実際に標準出力に文字が出る流れ、各行ごとの意味・役割を理解することがポイントになります。
主な流れは、クラスの定義→mainメソッド→System.out.printlnで出力です。それでは、1行ずつ順番に見ていきましょう。

1行目:「public class」とは

Javaではアプリケーションを組み立てる際に「クラス」という単位を使います。クラスは部品のような役割で、それぞれ異なる機能ごとに別のクラスを作ります。例えば、人間を表すクラスなら「髪の色」「身長」などの属性と、「走る」「食べる」などのメソッドを持てます。

Hello Worldプログラムで登場するHelloWorldクラスも同じような仕組みで作られています。Javaでは、クラス名を必ず大文字から始めるのが慣例です。クラスを作成する最も基本的な書き方は「class クラス名」で、アクセス修飾子としてpublicを付ければ「public class クラス名」となります。publicは「他の場所からも自由に使える」ことを意味します。

このpublic classは、プロジェクト内の他のファイルや処理からも参照や利用ができるという特徴を持っています。HelloWorldプログラムでも public class HelloWorld から始まっており、Java学習やアプリケーション開発において最初に理解しておきたい部分です。動作やファイル作成時にも直接関わってくる要素です。

クラスを分けたり使い分けたりすることで、大規模なアプリケーションやプログラムも整理して開発できるようになります。クラスの基本や命名規則をしっかり押さえて、順序よく学びを進めていきましょう。

2行目:mainメソッド

Javaのmainメソッドは、プログラムを動かすための最初のスタート地点として機能しています。mainメソッドがなければアプリケーションは始まりません。書き方は「public static void main(String[] args)」が標準で、publicやstaticの順番は入れ替えても構いませんが、一般的にはpublic staticが使われます。

引数の部分は「String[] args」のように書き、任意の名前をつけても動作しますが、多くの場合「args」か「argv」です。mainメソッドはCやC++のmain関数とも似ており、アプリケーションのエントリーポイントとして重要な役割を担っています。

mainメソッドからプログラムのすべてが始まり、その後の処理や他のメソッドの呼び出しもmainからスタートする仕組みです。たとえばHello Worldプログラムの場合、mainメソッドの中にSystem.out.println(“Hello World!”)と記述して、文字列を標準出力に表示させます。

このように、mainメソッドはあらゆるJavaアプリケーションの心臓部として動作し、初心者がJavaやプログラミングの仕組みを理解する上でも必ず出てくる大切な考え方です。

String[] argsの意味

mainメソッドの定義で使用されるString[] argsは、コマンドライン引数を配列で受け取るための仕組みです。プログラムを起動するとき、ユーザーが追加で指定したデータやオプションがこの配列に格納されます。例えば「java HelloWorld text」とコマンド入力した場合、args[0]に「text」という文字列が渡されます。

この引数は複数個渡すことができ、args[1]やargs[2]などのように順にアクセスして使用します。Javaではmainメソッド内で自由にこの情報を使い、プログラムの動作に変化をつけたり、ユーザー操作に対して柔軟に対応できます。

初心者が最初から必ず使う機能ではありませんが、本格的なアプリケーションや開発現場では必須の知識です。プログラミング言語ではこのような引数や配列の取り扱いが基本として用意されており、さまざまなデータ入力や設定をプログラムに渡したい時に便利です。

最初はargsを気にせずmainメソッドを書きますが、慣れてきたらコマンドライン引数の活用方法や配列の処理などもぜひ調べてみてください。より深いJavaの理解や実践的な開発スキルの習得につながります。

3行目:System.out.println() ステートメント

Javaで画面に情報を表示する基本の方法として、「System.out.println()」ステートメントが使われます。この命令は、出力したい文字列や数値を丸括弧の中に引数として記述し、プログラムの標準出力(通常はコンソール)に表示するものです。

コード内でSystem.out.println(“Hello World!”)と記述すると、ダブルクォーテーションで囲まれた”Hello World!”が文字列として解釈され、そのままコンソールへ出力されます。プログラミングでは文字列リテラルはダブルクォーテーションで囲うのが基本です。

また、行末には// コメント をつけることもできますが、これは出力に影響せず、ソースコードの解説や注意書きとしてのみ使われます。このようなコメントは、実際にプログラムを実行しても表示されることはありません。

System.out.printlnの「println」は「print line」の意味で、内容を出力したあと改行してくれる便利なメソッドです。System.out.printと書いた場合は改行しない形で出力されます。基本の出力方法を理解すると、他のデータ型や複雑な処理でも同じ感覚で使えますので、初心者にも扱いやすい命令のひとつです。

命令は「;」(セミコロン)で区切る

Javaプログラムでは命令文の終わりを「;」(セミコロン)で表します。例えば、Hello WorldプログラムのSystem.out.println(“Hello World!”);も、最後にセミコロンが付いています。

たった1行の命令の場合も、複雑で長いプログラムの複数行の場合も、すべて各命令の区切りとして必須です。他の言語、特に最近のプログラミング言語ではセミコロン無しで命令が終了することも多いですが、Javaは必ず「;」が必要になります。

Kotlinなど一部のモダン言語ではセミコロンを書かなくても文の終わりを自動で判断してくれますが、Javaではこのルールを守って書かないとコンパイルエラーになってしまうため注意しましょう。

プログラムを書く際には「どこで命令文が終わったか」を明示する意味でもセミコロンを忘れずに入力するようにしましょう。命令の区切りを意識することで、より複雑なロジックや構造も理解しやすくなります。

クラス名とファイル名の関係は

Javaでは、クラス名とソースファイル名には明確なルールがあります。public修飾子を持つクラスを定義した場合、そのクラス名と同じ名前のファイルに保存しなければなりません。例えばpublic class HelloWorldであれば、ファイル名は必ずHelloWorld.javaにする必要があります。

このルールを守らないとコンパイル時にエラーとなり、プログラムが動作しません。他の言語ではファイル名とクラス名が完全に一致しなくても動作するものもありますが、Javaは厳格に一致が求められます。

ファイルとクラスの対応により、大規模なアプリケーション開発でも構造が分かりやすくなり、統一されたプロジェクト管理がしやすくなります。一方で、名前の付け間違いには注意したいところです。

加えて、複数のクラスをひとつのファイルに記述する場合も、publicクラスはそのファイル名と一致させ、ほかのクラスはファイル名と異なっていても構いません。この基本を押さえておけば、初心者でも安心してJavaのクラス作成やファイル管理ができるようになります。

コンパイル

Javaのソースコードを実行するには、まず「コンパイル」という手順が必要です。(コンパイルにはJava Development Kit(JDK)のインストールが必須となります。まだインストールされていない場合は、「【Java入門】開発環境の準備 JDKのインストール方法(Windows編)」を参考にインストールしてください)

コマンドプロンプト(ターミナル)を起動し、ソースファイルを保存したフォルダに移動します。
Windowsの場合は「cd」コマンドを利用して、「cd 移動したいフォルダの場所」と指定します。
今回のサンプルは、「C:¥java」フォルダに保存したので、「cd C:¥java」と実行(Enterキー)します。

移動したら、ソースファイルのある場所で「javac HelloWorld.java」と入力し、実行(Enterキー)します。

javacコマンドでのコンパイル

このコマンドによりソースファイルがJavaコンパイラ(javac)によって処理され、HelloWorld.javaというテキストファイルが、バイトコード形式のHelloWorld.classというファイルに変換されます。バイトコードはJava仮想マシン(JVM)で動作する形式です。

コンパイルが成功すると、クラスファイルが生成され、次のステップでプログラムの実行が可能となります。Javaはこの2段階の手順を経て、初めて開発したプログラムを動かせる言語です。

ファイルやフォルダの場所管理、javacコマンド入力時のスペルや名前の間違いにも注意しながら作業しましょう。コンパイルを覚えることで、他のIT開発ツールや言語の基本も理解しやすくなります。疑問やエラーが出た場合は、エラー内容を確認しながらひとつひとつ解決してみてください。

よくあるコンパイルエラーと解消法

学習初期に発生するコンパイルエラーを幾つか紹介しておきます。
もし今回のサンプルプログラムのコンパイルでエラーが発生した場合は、下記を参考に、エラー箇所を修正してみてください。

エラー: クラス HelleWorldはpublicであり、ファイルHelleWorld.javaで宣言する必要があります

コンパイル対象のJavaプログラムの「ファイル名」と「publicなクラス名」が一致していない可能性があります。ファイル名とクラス名の入力ミスが無いか、確認してみましょう。

エラー: ‘;’がありません

Javaプログラムでは命令文の終わりを「;」(セミコロン)で区切る必要があります。System.out.println(“Hello World!”)の後ろにセミコロンが抜けていないか確認してみましょう。

エラー: 文ではありません

エラー該当行のどこかに、Javaプログラムの文法として正しくない箇所があります。
エラーと一緒に表示されている行の記述内容をもう一度見直してみましょう。例えば、半角で入力するべき文字を、全角で入力している場合などもこのエラーが発生します。

エラー: 文字列リテラルが閉じられていません

Javaプログラムで操作したい「文字列」は、全てダブルクォーテーション(”)で囲う必要があります。
今回のサンプルプログラムの場合は、表示したい文字列「Hello World!」の前後をダブルクォーテーション(”)で囲わなければいけません。前か後ろ、どちらかのダブルクォーテーションが抜けていないか確認してみましょう。

エラー: <identifier>がありません

Javaプログラムの文法上、決められた単語(「予約語」)が、あるべき箇所に無いと発生するエラーです。例えば、「public」や「static」の綴りが間違っている場合に発生します。入力ミスが無いか確認してみましょう。

プログラムの実行

Javaプログラムを動かすには、コマンドプロンプトやターミナルでカレントディレクトリをソースファイルの保存先に移動し、「java HelloWorld」などのコマンドを入力します。例えばファイルを「C:\java\HelloWorld」に保存した場合、そのフォルダを開いてから実行コマンドを入力します。

ファイルのパスを直接指定することも可能です。カレントディレクトリがHelloWorld.javaの保存場所なら、コマンドラインで「java HelloWorld」(拡張子なし)だけで実行できます。Java11以降は「java HelloWorld.java」とソースファイルを直接指定して動かす方法にも対応しています。

コマンドを実行した直後、次の行に「Hello World!」と表示されれば成功です。表示されない、エラーが出る場合はコマンドや保存場所、ファイル名などを見直してみましょう。プログラムの実行手順に慣れていくと、他のITツールや開発環境の使い方にも役立ちます。

【まとめ】

このページではJavaのHello Worldプログラムについて解説してきました。初めてJavaを学ぶ方にとって、このシンプルなプログラムを書いて実行する体験は、プログラミングの基本と世界への扉を開いてくれます。クラスやmainメソッド、システム出力、コンパイルと実行までの具体的な流れを一つずつ経験できるのが、Hello Worldプログラムの最大の利点です。

Javaは多くのアプリケーションやWebシステム、データ処理などにも活用できる強力なプログラミング言語です。最初につまずきそうな部分やコンパイル、実行時のよくあるエラーと解決方法についても学びました。

もしさらに詳しく学びたい方は、このページ下部のリンクやJava入門カテゴリーより、続きの解説や他のプログラム例をチェックしてみてください。SNSやコメント欄もありますので、ご質問や感想もお待ちしています。

これからJavaに挑戦する皆さんの学習とアプリケーション開発の第一歩が、より楽しく効果的に進むことを応援しています。次のステップに進む準備ができたら、下記の入門リンクをぜひご活用ください。

プログラミングスクール「コードリスタ」は、業界最安級の料金設定なので未経験からエンジニアを目指す方におすすめです。

未経験から最短10日でエンジニア転職 業界最安級 オンライン受講が選べるプログラミングスクール コードリスタ 詳しくはこちら
コードリスタ編集部
コードリスタ編集部

コードリスタの記事制作、編集を行っております。 株式会社クオンツ代表の高橋文明による記事監修のもと、プログラミング言語に関する知識、学習ノウハウ、未経験からエンジニアを目指す方向けのコンテンツなど様々な情報を配信しています。読者にとって有益になる情報をお届けします!

監修者

RELATED POSTS 関連記事