spring
@Retention - annotation Target
designercoding
2021. 5. 5. 10:45
어노테이션의 적용되는 시점(RUNTIME)을 결정하는 것으로 메모리에 넣고 빼는 시점을 결정하는 것으로 보통 @Target 어노테이션과 같이 사용한다.
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
적용시점(RUNTIME)
표현 | 타입 |
RetentionPolicy.CLASS |
클래스 파일에 있는 어노테이션정보가 컴파일러에 의해 참조 가능, 가상머신에서는 사라짐(리플렉션 불가, 디폴트) |
RetentionPolicy.SOURCE |
어노테이션 정보가 컴파일 시 사라짐 |
RetentionPolicy.RUNTIME |
실행 시 어노테이션 정보가 가상머신에 의해서 참조 가능 |
사용방법
@Retention(RetentionPolicy.RUNTIME)
반응형