Hello

Java 메타 애너테이션

by 볼빵빵오춘기

메타 애너테이션

  • 애너테이션을 만들때 사용하는 애너테이션이다.(= 애너테이션을 위한 애너테이션)
  • 메타 애너테이션은 java.lang.annotation 패키지에 포함되어있다.
메타 애너테이션 설명
@Target 애너테이션이 적용가능한 대상을 지정하는데 사용한다.
@Documented 애너테이션 정보가 javadoc으로 작성된 문서에 포함되게 한다.
@Inherited 애너테이션이 자손 클래스에 상속되도록 한다.
@Retention 애너테이션이 유지되는 범위를 지정하는데 사용한다.
@Repeatable 애너테이션을 반복해서 적용할 수 있게 한다.(JDK 1.8)

 

@Target

사용자가 만든 annotion이 부착될 수 있는 타입을 지정하는 애너테이션이다.

 

@Retention

  • 애너테이션이 유지(retention)되는 기간을 지정하는데 사용한다.
  • 컴파일러에 의해 사용되는 애너테이션의 유지 정책은 SOURCE이다.
  • 실행시에 사용 가능한 애너테이션의 정책은 RUNTIME이다.

 

@Documented

javadoc으로 작성한 문서에 포함시키려면 @Documented를 붙인다.

 

@Inherited

애너테이션을 자손 클래스에 상속하고자 할 때, @Inherited를 붙인다.

 

@Repeatable

  • 반복해서 붙일 수 있는 애너테이션을 정의할 때 사용한다.
  • @Repeatable이 붙은 애너테이션은 반복해서 붙일 수 있다.
  • @Repeatable인 @ToDo를 하나로 묶을 컨테이너 애너테이션도 정의해야 한다.

 

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기