【初心者向け】Javaプログラムの基本構造を徹底解説!構成要素とサンプルコード
Javaでアプリケーションを開発するうえで、プログラムの基本的な構造を理解することはとても重要です。典型的なJavaプログラムは、次の要素で構成されています。
- パッケージ宣言
- インポート文(import)
- コメント
- クラス定義
- クラス変数・ローカル変数
- メソッド(振る舞い)
パッケージ宣言
Javaでは、クラスを用途やモジュールごとに異なるディレクトリ(パッケージ)へ配置できます。同一の親ソースディレクトリに属するすべてのクラスに対しては、ソースディレクトリからのパスがパッケージ宣言として扱われます。パッケージを活用することで、クラス名の衝突を防ぎ、コードを整理して管理しやすくなります。
インポート文
自分のプロジェクト内の別フォルダ(パッケージ)にあるクラスのほかにも、個人や企業が公開している便利なクラスライブラリなど、プログラムで活用できるクラスは多数存在します。これらのクラスを使用するには、import文で対象のクラスをインポートする必要があります。1つのプログラムで複数のクラスをインポートできるため、import文は何度でも記述できます。
コメント
コメントは、変数・メソッド・クラスなどのコードに関する補足情報を記述するために使われます。また、特定のコードを一時的に無効化(非表示)したい場合にも活用できます。Javaには「//」による単一行コメントと、「/* */」で囲む複数行コメントが用意されています。
クラス定義
Javaファイル内のクラスには必ず名前を付ける必要があります。このクラス名は、他のクラスやプログラムの中でクラスのオブジェクトを生成する際に使用されます。
変数
変数は、プログラムの実行中に必要となる値(パラメータ)を格納するためのものです。修飾子(modifier)を付けて宣言された変数はスコープが異なり、そのスコープによって変数の寿命(有効期間)が決まります。
mainメソッド
Javaアプリケーションの実行はmainメソッドから始まります。言い換えれば、mainメソッドはJavaランタイム上で起動されるクラスやプログラムのエントリーポイント(開始地点)です。
メソッド(振る舞い)
メソッドとは、プログラムの実行中に何度も必要となる目的のある機能(一連の命令)をまとめたものです。同じ機能が必要になるたびに同じ命令列を繰り返し記述しなくて済むよう、命令をメソッドとしてひとまとめにします。引数として変数の値を渡すことで、メソッドの振る舞いを柔軟に制御できます。
サンプルコード
以下は、Javaプログラムの基本構造を理解するためのサンプルプログラムです。
package abc; // パッケージ宣言
import java.util.*; // インポート文の宣言
// Javaの基本構造を理解するためのサンプルプログラム(コメント)
public class JavaProgramStructureTest { // クラス名
int repeat = 4; // グローバル変数(インスタンス変数)
public static void main(String args[]) { // mainメソッド
JavaProgramStructureTest test = new JavaProgramStructureTest();
test.printMessage("Welcome to Tutorials Point");
}
public void printMessage(String msg) { // メソッド
Date date = new Date(); // メソッド内のローカル変数
for(int index = 0; index < repeat; index++) { // ここでのindexはforループ内のローカル変数
System.out.println(msg + "From" + date.toGMTString());
}
}
}
実行結果
Welcome to Tutorials Point from 2 Jul 2019 08:35:15 GMT
Welcome to Tutorials Point from 2 Jul 2019 08:35:15 GMT
Welcome to Tutorials Point from 2 Jul 2019 08:35:15 GMT
Welcome to Tutorials Point from 2 Jul 2019 08:35:15 GMT
なお、サンプルで使用しているtoGMTString()は現在では非推奨(deprecated)のメソッドです。実際の開発では、SimpleDateFormatやDateTimeFormatter(java.time API)などを使って日時を整形するのが一般的です。
まとめ
Javaプログラムは「パッケージ宣言 → インポート文 → クラス定義 → mainメソッド」という流れが基本となります。それぞれの要素の役割を正しく理解しておくと、コードの読み書きが格段にスムーズになります。まずは本記事のサンプルコードを実際に動かしてみて、構造を体で覚えることをおすすめします。
-
JavaにおけるCursorクラスの役割とは?マウスカーソル制御の基本を解説
JavaのCursorクラスとはCursorクラスは、Objectクラスのサブクラスであり、画面上のポイント(指し示す位置)やインジケーター(表示標識)として定義されます。ユーザーがマウスを使ってシステムへの入力を選択・操作する際に、その位置を視覚的に示す重要な役割を担っています。GUIアプリケーションでは、状況に応じてカーソルの形状を変えることで、ユーザーに対して直感的なフィードバックを提供できます。例えば、処理中であることを伝える砂時計型のカーソルや、クリック可能な要素を示す手型のカーソルなどが代表的な例です。利用可能なカーソルの種類Cursorクラスには、あらかじめ定義されたさまざまなカ
-
Java Swingのアーキテクチャとは?特徴とMVCモデルをわかりやすく解説
Java Swingは、Javaプログラム向けにグラフィカルユーザーインターフェース(GUI)を提供するAPI群です。Java Swingは、それ以前のAPIであるAbstract Window Toolkit(AWT)をベースに開発されました。AWTと比べて、より豊富で洗練されたGUIコンポーネントを備えており、シンプルな部品から複雑なツリーやテーブルまで幅広く利用できます。さらに、プラグイン可能なルック&フィール(Pluggable Look and Feel)機能により、Javaプログラムの外観を基盤となるプラットフォームから独立して制御できる点も大きな特長です。 Java Swingの