java 原生注解(基于java8)整理记录

参考资料:https://docs.oracle.com/javase/8/docs/api/

Java内部原生注解,共有 11 个,java.lang中有5个、java.lang.annotation 中有6个。

①java.lang中5个:作用在代码的注解
@Deprecated:标记已过时方法。如果使用该方法,会报编译警告
@FunctionalInterface(java8新增):标记在接口上,表示该接口为:函数式接口。指仅仅只包含一个抽象方法的接口,例如Runnable
@Override:标注该方法是重写方法
@SafeVarargs(java7新增):只能用于标记构造函数和方法,作用和@SuppressWarnings(“unchecked”)差不多,抑制未检查检查警告。
@SuppressWarnings:指示编译器忽略注解中声明的警告

②java.lang.annotation 中有6个:作用在其他注解的注解

@Documented:只是用来做标识,没什么实际作用。自定义注解的时候可以使用@Documented来进行标注,如果使用@Documented标注了,在生成javadoc的时候就会把@Documented注解给显示出来
@Inherited:注解继承:一个被@Inherited注解了的注解修饰了一个父类,如果他的子类没有被其他注解修饰,则它的子类也继承了父类的注解
@Native(java8新增):未知具体用法
@Repeatable(java8新增):标识一个注解可以在同一个声明上使用多次,每次又可以代表不同的含义
@Retention:标识注解的存在阶段。
        分为三个阶段:①RetentionPolicy.SOURCE:注解仅存在于源码中
                        ②RetentionPolicy.CLASS:默认的存在阶段,注解会在class字节码文件中存在,但运行时无法获得
                                                      ③RetentionPolicy.RUNTIME:注解会在class字节码文件中存在,在运行时可以通过反射获取到
@Target:标记这个注解应该是哪种 Java 成员、作用的范围。具体的值参照:ElementType
    TYPE,               类、接口(包括注释类型)或枚举声明  
    FIELD,              字段声明(包括枚举常量)
    METHOD,             方法声明
    PARAMETER,          参数声明
    CONSTRUCTOR,        构造方法声明
    LOCAL_VARIABLE,     局部变量声明
    ANNOTATION_TYPE,    注释类型声明
    PACKAGE             包声明

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值