java 注解

场景:Java注解学习1:注解术语

Java注解学习一:注解术语

一.元注解

  1. @Target:表示该注解可以用于什么地方。可选的ElementType参数包括:
  • TYPE:类,接口(包括注解类型),enum的声明。
  • FIELD:域的声明(包括enum实例)。
  • METHOD:方法的声明。
  • PARAMETER:参数的声明。
  • CONSTRUCTOR:构造器的声明。
  • LOCAL_VARIABLE:局部变量的声明。
  • ANNOTATION_TYPE:注解的声明。
  • PACKAGE:包的声明。
  • @Retention:表示需要在什么级别保存该注解学习。可选的RetentionPolicy参数包括:
    • SOURCE:注解将被编译器丢弃。
    • CLASS:注解在class文件中可用,被VM丢弃。
    • RUNTIME:VM会把注解加载到内存里,运行期间可见,所以可以通过反射读取注解的信息。
  • @Documented:将此注解包含在Javadoc中。
  • @Inherited:允许子类继承父类的注解。并不是说允许子注解类继承父注解类。
  •  

     

    二.标准注解

         J2SE5里内置了三种

    1. @Override
    2. @Deprecated
    3. @SuppressWarnings

    三.自定义注解

    1. 标记注解:没有元素的注解称为标记注解。
    2. 其它注解:定义了元素的注解。

    四.注解元素

         自定义一个注解类时,类里面的元素只能是如下类型,如果使用其它类型,编译器报错。

    1. 所有基本类型(注意不能使用包装类型)
    2. String
    3. Class
    4. enum
    5. Annotation
    6. 以上类型的数组