Annotation

yeonju·2020년 3월 26일
0
  • custom annotation
    https://jdm.kr/blog/216

  • meta annotation

    • @Retention : 어떤 시점까지 어노테이션이 영향을 미치는지
      • @Retention(RetentionPolicy.RUNTIME) // 컴파일 이후에도 JVM에 의해서 참조
        @Retention(RetentionPolicy.CLASS) // 컴파일러가 클래스를 참조할 때까지 유효
        @Retention(RetentionPolicy.SOURCE) // 컴파일 이후 없어짐
    • @Target : 어노테이션이 적용할 위치
      • @Target({
        ElementType.PACKAGE, // 패키지 선언시
        ElementType.TYPE, // 타입 선언시
        ElementType.CONSTRUCTOR, // 생성자 선언시
        ElementType.FIELD, // 멤버 변수 선언시
        ElementType.METHOD, // 메소드 선언시
        ElementType.ANNOTATION_TYPE, // 어노테이션 타입 선언시
        ElementType.LOCAL_VARIABLE, // 지역 변수 선언시
        ElementType.PARAMETER, // 매개 변수 선언시
        ElementType.TYPE_PARAMETER, // 매개 변수 타입 선언시
        ElementType.TYPE_USE // 타입 사용시
        })
profile
안녕하세요.

0개의 댓글