보유 외에도 JDK 5에서 제공하는 다른 3 가지 주석, 즉 대상, 상속 및 문서화가 있습니다.
대상 목표는 대상 주석이 사용되는 곳으로, 사용중인 주석의 타이밍, 즉 주석이 적용되는 프로그램 요소의 유형을 정의합니다. 주석 유형 선언에 대상 메타 주석이 존재하지 않으면 선언 된 유형을 모든 프로그램 요소에 사용할 수 있습니다. 이러한 메타 노트가 존재하는 경우 컴파일러는 지정된 사용량 제한을 시행합니다.
대상은 다음과 같이 정의됩니다.
@documented@rendent (retentionpolicy.runtime) @target (elementtype.annotation_type) public @interface target {elegementtype [] value ();}보시다시피 대상은 하나의 값 속성 만 가지고 있으며 그 유형은 Enum 유형 ElementType입니다. ElementType 선언은 다음과 같습니다.
공개 ENUM ELECTTYPE { / ** 주석은 클래스, 인터페이스 (주석 유형 포함) 또는 열거 선언* / 유형, / ** 필드 선언 (Enum Constants 포함)* / 필드, / ** 메소드 선언* / 메소드, / ** 매개 변수 선언* / 매개 변수, / ** 구성 선언* / 구성 선언* / 구성 선언* / 구성 선언* / 구성 선언* / 구성 선언* / 구성 선언* / ** 로컬 변수 선언문* / ** 국소 기형 선언* / ** 국소 기형 선언* / **. / ** 주석 유형 선언* / annotation_type, / ** 패키지 선언* / 패키지}문서화 된 주석은 Javadoc을 만들 때 주석 정보가 문서에 추가되는지 여부를 나타냅니다. 주석이 선언 할 때 @documented를 사용하는 경우 Javadoc을 만들 때 주석 정보가 Javadoc에 추가됩니다. 주석은 다음과 같습니다.
@documented@retention (value = runtime) @target (value = annotation_type) //이 주석이 주석을 선언 할 때만 사용할 수 있음을 나타냅니다.
상속 주석은 또한 메타 주석이며 선언은 다음과 같습니다.
@documented@retention (value = runtime) @target (value = annotation_type) public @interface inherited {}상속 주석은 주석이 서브 클래스에 의해 상속 될지 여부를 나타내고 기본값은 상속되지 않습니다. 주석이 선언되면 @Inherited 주석이 사용되면 주석이 주석을 사용하여 클래스의 서브 클래스에 의해 상속됩니다.