>  기사  >  Java  >  자바 프로그래밍 사고 학습 수업(7) 20장 - 노트

자바 프로그래밍 사고 학습 수업(7) 20장 - 노트

php是最好的语言
php是最好的语言원래의
2018-08-09 14:59:021332검색

Annotations(metadata라고도 함)는 코드에 정보를 추가할 수 있는 공식적인 방법을 제공하므로 나중에 데이터에서 매우 편리하게 사용할 수 있습니다.

1 기본 구문

 Annotated 방식은 다른 방식과 다르지 않습니다. 주석은 public, static 또는 void 등 메서드의 모든 수정자와 함께 사용할 수 있습니다. 구문 관점에서 주석은 수정자와 거의 동일하게 사용됩니다.

1.1 주석 정의

  주석의 정의는 인터페이스의 정의와 매우 유사합니다. 실제로 다른 Java 인터페이스와 마찬가지로 주석도 클래스 파일 으로 컴파일됩니다.

  주석을 정의할 때 @Target, @Retention과 같은 meta-annotations이 필요합니다. @Target@Retention

  在注解中,一般都会包含一些元素以表示某些值。当分析处理注解时,程序或工具可以利用这些值。注解的元素看起来就像接口的方法,唯一的区别是你可以为其指定默认值。元素的类型有限制。

  没有元素的注解称为标记注解(marker annotation)

  所有注解都继承了annotation

package net.mrliuli.annotations;import java.lang.annotation.*;@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface Test {} //(marker annotation)

1.2 三种标准注解和四种元注解

  定义在java.lang中的三种标准注解:

  • @Overrided

  • @Deprecated

  • @SuppressWarnings

  四种元注解:

  • @Target 表示该注解可以用于什么地方。

  • @Retension 表示需要在什么级别保存该注解信息。

  • @Documented 将此注解包含在Javadoc中。

  • @Inherited 允许子类继承父类中的注解。

1.3 关于注解

  • 注解元素的类型有限制,不可以是任意类型,使用除允许类型以外的类型编译器会报错。

  • 默认值限制:

    @Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface SimulationNull{
        public int id() default -1;    public String description() default "";
    }
    • 首先,元素不能有不确定的值。也就是说,元素必须要么具有默认值,要么在使用注解时提供元素的值。

    • 其次,对于非基本类型的元素,无论是在源代码中声明时,或是在注解接口中定义默认值时,都不能以null

        주석에서는 일반적으로
    • 일부
  • 요소

    를 포함하여 특정 값 ​​
  • 을 나타냅니다. 프로그램이나 도구는 주석을 구문 분석하고 처리할 때 이러한 값을 활용할 수 있습니다. 주석이 달린 요소는 인터페이스 메소드와 비슷해 보이지만 유일한 차이점은 해당 요소에 대해
기본값

을 지정할 수 있다는 것입니다. 요소 유형에는 제한이 있습니다.

 요소가 없는 주석을 마커 주석이라고 합니다.   모든 주석은

주석
    을 상속합니다.
  • rrreee

    1.2 3개의 표준 주석과 4개의 메타 주석

  • java.lang에 정의된 3개의 표준 주석:
  • @Overrided

@Deprecated

@SuppressWarnings

🎜 네 가지 메타 주석: 🎜🎜🎜🎜@Target은 주석을 사용할 수 있는 위치를 나타냅니다. 🎜🎜🎜🎜@Retension은 주석 정보를 저장해야 하는 수준을 나타냅니다. 🎜🎜🎜🎜@Documented 이 주석을 Javadoc에 포함합니다. 🎜🎜🎜🎜@Inherited를 사용하면 하위 클래스가 상위 클래스로부터 주석을 상속받을 수 있습니다. 🎜🎜🎜🎜1.3 주석 정보🎜🎜🎜🎜주석 요소의 유형은 제한되어 있으며 허용되는 유형 이외의 유형을 사용하면 컴파일러에서 오류를 보고합니다. 🎜🎜🎜🎜기본 값 제한: 🎜rrreee🎜
    🎜🎜우선, 요소는 불확정한 값을 가질 수 없습니다. 즉, 요소에는 기본값이 있거나 주석을 사용할 때 요소의 값을 제공해야 합니다. 🎜🎜🎜🎜두 번째로, 기본 유형이 아닌 요소의 경우 소스 코드에서 선언할 때나 주석 인터페이스에서 기본값을 정의할 때 null을 값으로 사용할 수 없습니다. 이러한 제약으로 인해 주석 프로세서가 요소의 존재 여부를 표현하기가 어렵습니다. 각 주석 선언에는 모든 요소가 존재하고 해당 값이 있기 때문입니다. 이 제약 조건을 해결하기 위해 빈 문자열이나 음수와 같은 일부 특수 값만 정의하여 요소가 존재하지 않음을 나타낼 수 있습니다. 🎜🎜🎜🎜🎜 외부 파일을 생성합니다. 일부 프레임워크에서는 소스 코드로 작업하려면 몇 가지 추가 정보가 필요하며, 이 경우 주석은 해당 값을 표현하는 데 가장 적합합니다. Enterprise JavaBeans와 같은 기술에는 배포 설명 파일이 필요합니다. 웹 서비스, 사용자 정의 태그 라이브러리 및 객체/관계형 매핑 도구(예: Toplink 및 Hibernate)는 일반적으로 XML 설명 파일이 필요하며 이러한 설명 파일은 소스 코드와 분리됩니다. 🎜🎜🎜🎜2 주석 프로세서 작성🎜🎜 주석 사용 과정에서 중요한 부분은 주석을 읽는 데 사용되는 🎜🎜주석 프로세서🎜🎜를 만들고 사용하는 것입니다🎜. 🎜🎜🎜🎜반사 메커니즘의 API는 주석 프로세서를 구성할 수 있습니다🎜🎜🎜🎜외부 도구 apt는 주석으로 Java 소스 코드를 구문 분석할 수 있습니다🎜🎜🎜🎜관련 기사: 🎜🎜🎜Java 프로그래밍 사고 학습 수업(5) 18장 -Java IO System🎜🎜🎜🎜Java 프로그래밍 사고 학습 수업(6) 19장 - 열거형🎜🎜

위 내용은 자바 프로그래밍 사고 학습 수업(7) 20장 - 노트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.