Java-注解Annotation

1 注解的写法

 @xxx[(一些信息)]

2 注解放在哪里?

类的上面,属性上面,方法上面,构造方法上面,参数前面

3. 注解的作用

  • 用来充当注释的作用 @Deprecated
  • 用来作为代码的检测 @Override
  • 可以携带一些信息

4. Java已有的注解

@Deprecated  用来说明方法是废弃的
@Override    用来做代码检测,判断方法是否是重写方法
@SuppressWarnings(信息)  抑制编译程序警告
    信息是String[]数组,格式为{"",""}
        unused
        serial
        rawtypes
        deprecation
        unchecked
        all

5.注解中可以携带的信息,可以携带以下类型的信息

  • 基本数据类型
  • String类型
  • 枚举类型
  • 注解类型@
  • 数组类型[] 数组的内部需要是如上的四种类型

6.如何自定义一个注解类型

  • 通过@Interface定义一个新的注解类型
  • 可以描述public abstract 的方法,但是在注解中可以省略这些修饰符
  • 我们自定义的注解还需要添加一些说明,用元注解来进行说明
  • 元注解也是注解,它不是拿来使用的,是专门用来说明注解的
  • 元注解
@Target  描述当前的这个注解可以放置在哪里写
@Retention 描述当前的这个注解存在什么作用域中
    源代码文件---->编译---->字节码文件---->加载---->内存中运行
    SOURCE                  CLASS               RUNTIME
@Inherited 描述当前注解是否可以被子类对象继承
@Documented 描述整个注解是否能被文档所记录
@Native
@Repeatable
import static java.lang.annotation.ElementType.*;
@Target(FIELD,TYPE,METHOD)
public @interface MyAnnotatio{

    String test();  //注解中的方法必须有返回值,返回值类型就是如上五种
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容