アノテーションとは、ソースコードのアノテーション (注釈) を標準化したものです。この機能はJavaの内部的には、アノテーション型 (注釈型) として実装されています。
アノテーション型 (annotation type) は、インターフェイスの特殊な種類であり、interfaceキーワードの前に@文字を付けて指定します。
@interface AnnotationName {
String a();
int b();
}
| アノテーション型 | 説明 |
|---|---|
| @Target | アノテーションを適用できるプログラム要素を示す |
| @Retention | リテンションポリシーを示す |
| @Deprecated | 非推奨であることを示す |
| @Documented | ドキュメンテーションコメントを処理させるべきであることを示す |
| @Inherited | 継承されることを示す |
| @Override | オーバーライドしていることを示す |
| @SupressWarnings | コンパイラに警告を無視するように指示する |
@AnnotationName( a = "abc", b = 123 )
public class MyClass {
}
オーバーライドしているメソッドに記述します。
class MyClass {
void A(){}
}
class SubClass extends MyClass {
@Override
void A() {} // OK
@Override
void B() {} // ERROR : The method B() of type SubClass must override or implement a supertype method
}
Override (Java Platform SE 7 )
スーパータイプに存在していないメソッドに対して指定すると、エラーとなります。