美文网首页
注解Annotation

注解Annotation

作者: jadefly | 来源:发表于2019-03-26 11:31 被阅读0次

    简介:1.代码中的特殊标记,可以在编译、类加载、运行时被读取操作,在不改变原有逻辑的情况下在源文件中嵌入一些补充信息。

               2.可以像修饰符一样被使用,用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明,信息保存在注解的“name=value”中。

               3.能用来为程序元素(类、方法、成员变量等)设置元数据(MeteData)


    JDK内置的基本注解类型(3个)

    @Override:限定重写父类方法(只能用于方法)

    @Deprecated:用于表示某个程序元素已过时

    @SuppressWarning:抑制编译器警告


    自定义注解类型

    public @interface MyAnnotation{

                //String value();

                //String[] value();

                String value() default "hello";

    }

    使用:@MyAnnotation(value = "你好")


    元注解(4个)

    简介:对注解进行注解,修饰实体数据的数据叫元数据(String name = "hello"),修饰注解的注解叫元注解。

    @Retention:指定被修饰的注解保留多长时间,RUNTIME生命周期最长

                           RetentionPolicy.SOURCE:编译器直接丢弃这种策略的注释

                           RetentionPolicy.CLASS:编译器把注释记录在class文件中,当运行Java程序JVM不保留注解,这是默认值

                           RetentionPolicy.RUNTIME:编译器把注释记录在class文件中,当运行Java程序JVM保留注解,程序可以通过反射获取注释                                                               

    @Target:指定被修饰的注解能修饰哪些程序元素,@Target( { TYPE,FIELD,METHOD... } )

    @Documented:指定被修饰的注解将被javadoc工具提取成文档(必须设置@Retention为RUNTIME)

    @Inherited:指定被修饰的注解将具有继承性(某个类被注解,子类也具备该注解)

    相关文章

      网友评论

          本文标题:注解Annotation

          本文链接:https://www.haomeiwen.com/subject/defasftx.html