자바 주석을 사용자 지정하는 방법

  기록 용지는 후속 참조를 위해 학습된다. 주석이 자바 1.5에 도입, 자바는 프로그램에 포함 된 메타 데이터의 상당 반사 코멘트에서 실행하도록 사용자 정의 주석에 의해 얻어진다, 노트 사용되는 분석 도구 또는 컴파일러 파싱 할 수있다, 지정된 주석이있을 수 있습니다 컴파일 시간 또는 런타임에 효과적. 주석의 탄생하기 전에 메타 데이터 프로그램은 메모 나 자바의 javadoc의 형태로 존재하지만 노트는 메타 데이터를 포함뿐만 아니라 더 많은 기능을 제공 할뿐만 아니라, 주석 파서가 주석 의사 결정 프로세스를 사용할 수있는 실행에 역할을 할 수 있습니다.

  첫째, 사용자 정의 주석을 만들

  단지 추가 @ 줄 인터페이스 키워드 앞에, 사용자 정의 주석 인터페이스는 쓰기와 매우 유사하다 만듭니다.

가져 오기  java.lang.annotation.ElementType,
가져 오기
java.lang.annotation.Retention, 가져 오기 java.lang.annotation.RetentionPolicy, 가져 오기 java.lang.annotation.Target, @Target (ElementType.METHOD) // 유일한 효과적인 방법 ! 유지 (RetentionPolicy.RUNTIME) // 런타임 효과적인 공공 @ 인터페이스 PersonInfo { 문자열 이름 () 기본 "" ; 문자열 ID () 기본 "" ;
}

 그것은 주석 PersonInfo 두 가지 방법으로 두 개의 이름과 ID를 정의합니다. 주석 방법은, 파라미터를 가질 수 있지만, 디폴트 값이 될 수 있으며, 그 기본 형식 문자열 열거 나 특수 값 이상의 유형의 복귀 형으로 제한.

주석의 결합 요소를 포함 할 수있다 주석, 주석에 대한 주석 정보는 다음과 같은 특수 형태는 4 개의 원 바와 원 :

  1. @Documented - 주석 요소의 javadoc 또는 유사한 도구를 문서화해야한다고 표시는,이 문장의 유형에 적용, 주석 형 선언은 클라이언트 주석 요소의 사용에 영향을 미칠 것입니다. 유형 선언이 주석을 문서화 추가 한 경우, 다음의 주석 공개 API의 주석 요소의 일부가됩니다.

  TYPE (클래스, 주석 형 포함한 인터페이스 () 또는 열거 선언), 방법 ((방법 선언), 생성자 (생성자 - 2. @Target 변형 범위는 목적이 열거 클래스 ElementType에있는 값의 범위를 기술 대상 요소 주석이 없으면 문), 필드 (필드 선언), ANNOTATION_TYPE (주석 형 선언), LOCAL_VARIABLE (지역 변수 선언)의 패키지 (패키지 선언), 파라미터 (매개 변수 선언은). 후 주석은 어떤 사용할 수 있습니다 상기 프로그램 요소.

  3. @Inherited이 - 사용자의 쿼리 주석 유형 및 클래스 선언 주석의 형태가 아닌 경우는 주석 형은 자동으로 클래스 선언 시간에 상속 대표, 후 주석 형은 부모 클래스의 쿼리 클래스는,이 과정을 자동적으로 주석의 유형이 지금까지 발견 될 때까지 나는 계속 반복됩니다, 또는 상단 층 (개체) 클래스 구조를 도달한다.

  4. @Retention은 - 주석의 보유 형태의 시간의 길이를 나타내고, RetentionPolicy의 값의 범위는 클래스들을 열거 :

  (1) CLASS 컴파일러는 클래스 파일에 주석을 기록하지만하지 않습니다 VM 주석을 계속 실행해야

  (2) 런타임 컴파일러는 VM 댓글이 반사적으로 읽을 수 있습니다 유지 런타임에 클래스 파일에 기록을 언급합니다

  특수 폐기 내지 (3) SOURCE 컴파일러

  둘째, 사용자 정의 주석의 사용 
  주석 유지 전략 그렇지 않으면 실행에 잘못된 정보가 런타임해야한다, 우리는 모든 데이터를 추출 할 수 없습니다.
  


------ 20191224 플래시

추천

출처www.cnblogs.com/bien94/p/12093311.html