4. コメント
Javaでは、ソース上にプログラムとして認識されたくないことを記述するためにコメントという仕組みが用意されています。例えば、何らかの処理を記述した際に、その処理は何をする処理なのかをJava言語ではなく通常使っている言葉でコメントとして残す場合に使われます。Javaでは次の3種類のコメントがあります。
- 1行コメント
- 複数行コメント
- ドキュメント(JavaDoc)用コメント
4.1. 1行コメント
1行のコメントを書く場合は「//」を記述すると、そこから右の記述がコメントとなりプログラムとして解析されません。例えば次のように記述した場合、ハイライトした箇所がコメント扱いとなります。
// 1行コメントの例を下記に示します。 int index = 0; // ここからの記述はコメント扱いになります。 String value = "abc";
また、Eclipseでは複数行を選択して、Windowsの場合は「Ctrl」+「/」、Macの場合は「Command」+「/」を押下することで、選択した行をまとめて、1行コメントでコメントアウト(記述内容を消すのではなくコメント化して実行できなくすること)ができます。
4.2. 複数行コメント
「/*」と「*/」の間に書いたものは途中で改行が含まれていてもコメントとして扱われ、ソースコードの一部として解析されません。また使わなくなったメソッドを「/*」と「*/」で囲って、そのメソッドを一時的に使えなくするような使い方も可能です。次のように記述した場合、ハイライトした箇所がコメント扱いとなります。
/* * 複数行でのコメントの例になります。 * ここで書いたものはコメントとして扱われプログラムとして解析されません。 */ int index = 0; /* このように1行でも可能です */ /* このメソッドは実行されません public void doSomething() { System.out.println("コメントサンプル"); } */
また、このコメントは入れ子にすることはできません。次の場合はハイライト部分だけがコメント扱いとなります。
/* /* テスト */ */
4.3. ドキュメント(JavaDoc)用コメント
Javaでは、アプリケーションのクラスやメソッドなどに関するインターフェイスの仕様(API;Application Program Interface)についての説明を記述した、JavaDocというHTML形式のドキュメントを出力できます。次のURLはJava 8のJavaDocです。JavaDoc用のコメントを書くことで、次のURLにあるようなドキュメントをHTMLファイルとして出力することが可能になります。
正確にはこれはJavaDocを翻訳したものですが、ソースコードに出力されたファイルと同じコメントの記述をすると、同じドキュメントが生成されます。
JavaDocのドキュメントはソースコードに書かれたJavaDoc用のコメントをもとに出力されます。HTMLでのドキュメントになるので、このコメントでHTMLタグを記述すると、出力されたドキュメントでは文字ではなくHTMLタグとして認識されるので注意してください。
後述するクラスやフィールドやメソッドの上に「/**」と「*/」の間にかかれたものがJavaDocのコメントです。前回のHelloWorldアプリケーションにJavaDoc用のコメントを入れると次のようになります。ハイライトした箇所がJavaDoc用のコメントとなります。
package jp.codezine.java.sample02; /** * 「HelloWorld!!」と標準出力するクラスです。 */ public class HelloWorld { /** * HelloWorldクラスをjavaコマンドから呼ばれた際に実行される処理です。 * * @param args * コマンドライン引数。今回は使われません。 */ public static void main(String[] args) { System.out.println("Hello World!!"); } }
ここでmainメソッドのコメントの中に「@param」というものが出ています。これはタグと呼ばれるもので、「@」から始まり特定の単語を記述することで意味を持つことができます。ここでの「@param」はメソッドの中の引数を説明するためのものです。JavaDoc用のコメントにはいくつかのタグがあり、この他によく使われるものに、メソッドの戻り値を説明するための「@return」があります。
業務アプリの開発では、複数人で作業をしたり、開発に関わっていない人がアプリケーションの管理をしたりすることが多いため、他の人との意思疎通が必要になります。また自分で作成したプログラムでも何年か後で見た際に、どのような意図でそのようなプログラムを書いたのか忘れてしまうこともあります。そのためJavaDocのコメントを入れておくと、そのプログラムは何をするものなのかの意図が分かりやすくなるので、メソッドやフィールド値にJavaDocのコメントを入れておくようにしましょう。