JDK 5에서 제공하는 메모: Target, Inherited 및 Documented의 차이점
Target 목표인 Target 주석이 어디에 사용되는지 주석이 사용할 시기, 즉 주석이 적용되는 프로그램 요소의 종류를 정의합니다.콜아웃 형식 선언에 Target 메타콜이 없으면 선언된 형식은 프로그램 요소에 사용할 수 있습니다.이러한 메타메모가 있으면 컴파일러가 지정한 사용 제한을 강제로 실행합니다.
Target은 다음과 같이 정의됩니다.
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Target {
ElementType[] value();
}
Target은 하나의 value 속성만 있고 유형은 열거 유형인 ElementType입니다.ElementType 선언은 다음과 같습니다.
public enum ElementType {
/** 、 ( ) */
TYPE,
/** ( ) */
FIELD,
/** */
METHOD,
/** */
PARAMETER,
/** */
CONSTRUCTOR,
/** */
LOCAL_VARIABLE,
/** */
ANNOTATION_TYPE,
/** */
PACKAGE
}
Documented 메모는 javadoc을 만들 때 메모 정보를 문서에 넣을지 여부를 나타냅니다.메모가 선언할 때 @Documented를 사용하면 javadoc를 만들 때 메모 정보가 javadoc에 추가됩니다.메모는 다음과 같이 선언됩니다.
@Documented
@Retention(value=RUNTIME)
@Target(value=ANNOTATION_TYPE)// ,
public @interface Documented {}
Inherited 메모는 다음과 같이 메타 메모입니다.
@Documented
@Retention(value=RUNTIME)
@Target(value=ANNOTATION_TYPE)
public @interface Inherited {}
Inherited 메모는 메모가 이불류로 상속되는지 여부를 나타내며 기본적으로 상속되지 않습니다.메모가 선언될 때 @Inherited 메모를 사용하면 메모가 사용된 클래스의 하위 클래스가 상속됩니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Java】 STS (Eclipse)에 AdoptOpen JDK 설정· Eclipse를 2020-09로 업데이트하면 jre로 Eclipse를 움직이고 있습니다! 라는 메시지가 나온다. ・메모리 상태의 파악을 위해 MissionControl 넣으려고 하면 JDK로 움직이지 않으면 안 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.