七.注解

(1)注解:注释,注入(标注)

(2)

1.java内置注解:共有7个,3个在java.lang包下,4个在java.lang.annotation包下

annotation是一个接口,这7个注解都是annotation的实现类

(1)注解代码的注解

  • @Override - 重写。标记重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。
  • @Deprecated - 弃用。标记过时方法。如果使用该方法,会报编译警告。
  • @SuppressWarnings - 压制警告。指示编译器去忽略注解中声明的警告。

(2)元注解(注解其他注解的注解)

  • @Retention -(保留,指定annotation的保留策略) 标识这个注解怎么保存,是只在代码中,还是编入class文件中,或者是在运行时可以通过反射访问。
  • @Target -(指定annotation的目标类型) 标记这个注解应该是哪种 Java 成员。
  • @Documented - (文档化的)标记这些注解是否包含在用户文档中。
  • @Inherited - (继承的。所标注的annotation将具有继承性)标记这个注解是继承于哪个注解类(默认 注解并没有继承于任何子类)

2.每 1 个 Annotation都与 "1 个 RetentionPolicy" 关联,并且与 "1~n 个 ElementType" 关联

  RetentionPolicy 是 Annotation 的保留策略属性

  ElementType 是 Annotation 的作用类型属性

3.public enum ElementType {TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOCAL_VARIBLE,ANNOTATION_TYPE,PACKGE}  8个

   public enum RetentionPolicy {SOURCE,CLASS,RUNTIME}

原文地址:https://www.cnblogs.com/midiyu/p/15184686.html