https://youtu.be/p7KStWk8hWU?list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp
📖본 포스팅은 '자바의 정석 - 남궁성 저자' 님의 책과 유튜브 강의를 보고 작성되었습니다.
[메타 애너테이션이란?]
- 메타 애너테이션은 '애너테이션을 위한 애너테이션'
- 메타 애너테이션은 java.lang.annotation 패키지에 포함되어 있다.
[@Target]
- 애너테이션을 정의할 때, 적용 대상 지정에 사용한다.
[@Retention]
- 애너테이션이 유지(retention)되는 기간을 지정하는데 사용한다.
- 컴파일러에 의해 사용되는 애너테이션의 유지 정책은 SOURCE이다.
- 실행시에 사용 가능한 애너테이션의 정책은 RUNTIME이다.
[@Documented, @Inherited]
- javadoc으로 작성한 문서에 포함시키려면 @Documented를 붙여준다.
- 우리가 사용할 일은 별로 없다.
- 애너테이션을 자손 클래스에 상속하고자 할 때, @Inherited를 붙인다.
- 애너테이션도 상속이 가능하다.
- 이 역시도 많이 사용하지 않는다..
[@Repeatable]
- 반복해서 붙일 수 있는 애너테이션을 정의할 때 사용한다.
- @Repeatable이 붙은 애너테이션은 반복해서 붙일 수 있다.
- @Repeatable인 @ToDo를 하나로 묶을 컨테이너 애너테이션도 정의해야 한다.
'Java > 객체지향' 카테고리의 다른 글
[객체지향][쓰레드/thread] - 쓰레드 (0) | 2022.02.26 |
---|---|
[객체지향][애너테이션/Annotation] - 애너테이션 타입 정의하기, 애너테이션의 요소 (0) | 2022.02.25 |
[객체지향][애너테이션/Annotation] - 애너테이션(Annotation) (0) | 2022.02.24 |
[객체지향][열거형] - 열거형에 멤버 추가하기 (0) | 2022.02.22 |
[객체지향][열거형] - 열거형(enum) (0) | 2022.02.21 |