最新Eclipse 3.1によるEclipse再入門 3

アノテーションの使用

アノテーションを使ってみようEclipseの基本的な動作を押さえたところで、J2SE 5.0の新機能であるアノテーション(Annotations)を使ってみましょう。

edit

2006年2月22日 20:00

アノテーションを使ってみよう

Eclipseの基本的な動作を押さえたところで、J2SE 5.0の新機能であるアノテーション(Annotations)を使ってみましょう。

アノテーションとは、クラスやメソッド、フィールドなどのプログラム要素に対して、プログラム的に意味付けを行うことです。アノテーションを使わない場合、ソースコードにコメントを挿入したり、別途ドキュメントを作成するなどしてプログラム要素の意味を残すのが普通です。

しかし、これはプログラムコードと必ずしも同期しているわけではなく、時とともにドキュメントがプログラムに対して古くなってしまうというのは読者にも経験があるのではないでしょうか。

ここでは、よく使われると思われる「Overrideアノテーション」「Deprecatedアノテーション」「SuppressWarningsアノテーション」を使ってみます。

事前準備として、「Annotations」プロジェクトとパッケージ名「jp.co.impress.example」の「AnnotationsExample」クラスを作成します(作成方法は前回を参照してください)。

Overrideアノテーション

Overrideアノテーションは、メソッドのオーバーライドの記述ミスなどを確実に防ぐためのものです。エディターの右クリックから「ソース→メソッドのオーバーライド/実装」を選択します(図1)。



メソッドのオーバーライド
図1:メソッドのオーバーライド
(画像をクリックすると別ウィンドウに拡大図を表示します)

メソッドをオーバーライド/実装ウィンドウから「toString()」をチェックして、「OK」をクリックします(図2)。



toStringメソッドのオーバーライド
図2:toStringメソッドのオーバーライド

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



Overrideアノテーションが記述されたメソッド
図3:Overrideアノテーションが記述されたメソッド

これだけではOverrideアノテーションの意味がわかりづらいので、toStringメソッドの名称をxxStringに変えてファイルを保存 します。すると、Overrideアノテーションが記述されているので、コンパイル時にxxStringメソッドがスーパークラス(ここでは java.lang.Objectクラス)のメソッドとして定義されているかどうかの検証が行われます。

コンパイラは親クラスにxxStringメソッドが定義されていないのを検知し、オーバーライドが正しく行われていないことをエラーとして通知します(図4)。



Overrideアノテーションによりエラーが検出
図4:Overrideアノテーションによりエラーが検出
(画像をクリックすると別ウィンドウに拡大図を表示します)

なお、@Overrideの記述がない場合は検証が行われないため、通常のメソッドとしてコンパイルされ、エラーは発生しません。単純なミスで時間を浪費しないように@Overrideの記述を忘れないようにしましょう。

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る