アノテーション
アノテーションとは
Wikipedia抜粋
Javaのアノテーションは、クラスやメソッド、パッケージに対してメタデータとして注釈を記入する。
らしい。
アノテーションの種類
Javaのアノテーションは大きく分けると3つに分類される
- マーカーアノテーション
文字通り目印レベルの役割を果たすアノテーション、Javaでよく使われるアノテーションとして@Overrideや@Deprecatedなどがある - 単一値アノテーション
1つのデータを持つアノテーション - フルアノテーション
少なくとも2以上のデータを持つアノテーション
メタアノテーション
アノテーションを作るに当たってのアノテーションがあって、以下の定義を付加することで独自のアノテーションを定義することができる
-
@Retention
アノテーションの保持ルールを決める -
@Target
アノテーションが利用可能なプログラム要素を定義する -
@Inherited
アノテーションを付加した対象が継承後も付加された状態にしたい場合にこれを付加する
独自アノテーション定義
マーカーアノテーション
眠たいときに見てはいけないコードのアノテーション
定義
public @interface Sleepy { }
使用例
public class Work {
@Sleepy
public void meeting() {
System.out.println("...zzz");
}
}
単一値アノテーション
出身県を表すアノテーション
定義
public @interface NativePrefecture {
String value();
}
使用例
@NativePrefecture("大阪府")
public String getMessage(){
return "なんでやねん";
}
フルアノテーション
定義
public @interface NativePrefecture {
String value();
Int jisCode();
}