1. 注解的写法
      1. @xxx[(一些信息)]
    2. 注解放在哪里
      1. 类的上面,属性的上面,方法的上面,构造方法的上面,参数的前面
    3. 注解的作用
      1. 用来充当注释的作用
      2. 代码检测(验证)@override
      3. 携带一些信息(内容)
    4. java中一些写好的注解
      1. @Deprecated 用来说明方法是废弃的
      2. @Override 用来做代码检测 是否是一个重写方法
      3. @SuppressWarnings String[] {“”}
        1. unused 变量定义没有使用
        2. serial 类实现类序列化但没有给序列化id
        3. rawtypes 集合没有定义泛型
        4. deprecation 取消废弃的方法的线
        5. unchecked 出现泛型的问题可以不检测
        6. all 以上的全部
    5. 注解中可以携带一下的信息,类型如下
      1. 基本数据类型
      2. String类型
      3. 枚举类型
      4. 注解类型@
      5. 数组类型,数组内部只能写以上4中类型
    6. 元注解
      1. @Target 描述这个注解可以写在什么位置
      2. @Retention 描述当前这个注解存在什么作用域
      3. @Inherited 描述当前这个注解是否能被子类继承
      4. @Doucument 描述这个注解是否能被文档记录 ```java package test;

    import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;

    @Target({ElementType.FIELD,ElementType.METHOD,ElementType.CONSTRUCTOR}) @Retention(RetentionPolicy.CLASS) public @interface Person { int value();// 必须有返回值 是以上的几种类型 }

    ```