アノテーションを使ってみよう
Eclipseの基本的な動作を押さえたところで、J2SE 5.0の新機能であるアノテーション(Annotations)を使ってみましょう。
アノテーションとは、クラスやメソッド、フィールドなどのプログラム要素に対して、プログラム的に意味付けを行うことです。アノテーションを使わない場合、ソースコードにコメントを挿入したり、別途ドキュメントを作成するなどしてプログラム要素の意味を残すのが普通です。
しかし、これはプログラムコードと必ずしも同期しているわけではなく、時とともにドキュメントがプログラムに対して古くなってしまうというのは読者にも経験があるのではないでしょうか。
ここでは、よく使われると思われる「Overrideアノテーション」「Deprecatedアノテーション」「SuppressWarningsアノテーション」を使ってみます。
事前準備として、「Annotations」プロジェクトとパッケージ名「jp.co.impress.example」の「AnnotationsExample」クラスを作成します(作成方法は前回を参照してください)。
Overrideアノテーション
Overrideアノテーションは、メソッドのオーバーライドの記述ミスなどを確実に防ぐためのものです。エディターの右クリックから「ソース→メソッドのオーバーライド/実装」を選択します(図1)。
メソッドをオーバーライド/実装ウィンドウから「toString()」をチェックして、「OK」をクリックします(図2)。

図2:toStringメソッドのオーバーライド
toString()メソッドがオーバーライドされ、メソッドの1行上に「@Override」とアノテーションが記述されています(図3)。

図3:Overrideアノテーションが記述されたメソッド
これだけではOverrideアノテーションの意味がわかりづらいので、toStringメソッドの名称をxxStringに変えてファイルを保存 します。すると、Overrideアノテーションが記述されているので、コンパイル時にxxStringメソッドがスーパークラス(ここでは java.lang.Objectクラス)のメソッドとして定義されているかどうかの検証が行われます。
コンパイラは親クラスにxxStringメソッドが定義されていないのを検知し、オーバーライドが正しく行われていないことをエラーとして通知します(図4)。
なお、@Overrideの記述がない場合は検証が行われないため、通常のメソッドとしてコンパイルされ、エラーは発生しません。単純なミスで時間を浪費しないように@Overrideの記述を忘れないようにしましょう。

