Slide 18
Slide 18 text
18
限定⼦(Qualifier)の定義⽅法(1)
n 限定⼦は@Qualifierアノテーションを使⽤して定義する
18
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import javax.inject.Qualifier;
@Qualifier
@Retention(RUNTIME)
@Target({METHOD, FIELD, PARAMETER, TYPE})
public @interface Synchronous {}
限定⼦ Synchronous を定義している例
• @Qualifier で,限定⼦であることを宣⾔
• @Target で, METHOD, FIELD, PARAMETER および TYPE に付与できるアノテーションであることを宣⾔
• @Retention(RUNTIME) で,実⾏時までアノテーション情報が残ることを宣⾔
• @Inherited は指定していない(サブクラスには継承されないように宣⾔)
限定⼦の定義例