Java自定义注解

1.

  Java可以通过反射获取注解内容

2.内置注解

  @Override:检查该方法是否是重写方法;

  @Deprecated:标记过时方法;

  @SuppressWarnings:指示编译器去忽略注解中声明的警告

3.元注解

  @Retention:标识这个注解怎么保存,是只在代码中,还是编入class文件中,或者是在运行时可以通过反射访问(定标记注释的存储方式);

    RetentionPolicy.SOURCE - 标记的注释仅保留在源级别中,并由编译器忽略;

    RetentionPolicy.CLASS - 标记的注释在编译时由编译器保留,但Java虚拟机(JVM)会忽略;

    RetentionPolicy.RUNTIME - 标记的注释由JVM保留,因此运行时环境可以使用它

  @Documented: 标记这些注解是否包含在用户文档中;

  @Target:标记这个注解应该是哪种 Java 成员;

    ElementType.TYPE 可以应用于类的任何元素;

    ElementType.FIELD 可以应用于字段或属性;

    ElementType.METHOD 可以应用于方法级注释;

    ElementType.PARAMETER 可以应用于方法的参数;

    ElementType.CONSTRUCTOR 可以应用于构造函数;

    ElementType.LOCAL_VARIABLE 可以应用于局部变量;

    ElementType.ANNOTATION_TYPE 可以应用于注释类型;

    ElementType.PACKAGE 可以应用于包声明;

  @Inherited: 标记这个注解是继承于哪个注解类(默认 注解并没有继承于任何子类)

4.注解的作用:

  给jvm看的,给机器看的;

  代替配置文件

原文地址:https://www.cnblogs.com/Life-is-Demo/p/11750672.html