java 注解怎么自定义和使用

Java的注解是Java中非常好用的一个功能点。基本所有的java框架都会用到。在我们日常的工作中,如果善于使用自定义注解,讲给我们节省下大量的时间。

java 注解怎么自定义和使用

 

代码示例:

import java.lang.annotation.Documented;

import java.lang.annotation.ElementType;

import java.lang.annotation.Inherited;

import java.lang.annotation.Retention;

import java.lang.annotation.RetentionPolicy;

import java.lang.annotation.Target;

@Documented

@Target(ElementType.METHOD)

@Inherited

@Retention(RetentionPolicy.RUNTIME)

public @interface MyDemo{

String author() default ‘yunsheng’;

}

对自定义注解进行注解的称为元注解。常用的元注解有四类:

@Documented :表明此注解会被javadoc等类似工具识别,并保留在API文档中。

@Target:声明这个注解可使用的范围。可以打开ElementType看下,分别是:1)类,接口,注解,enum; 2)属性域;3)方法;4)参数;5)构造函数;6)局部变量;7)注解类型;8)包

@Inherited:继承。是说如果你在父类上使用了被@Inherited注解的注解A。那么该类的子类也会继承该注解A。

@Retention:注解的存在范围。

有三个范围:

RetentionPolicy.SOURCE 只存在源码级别,被编译器抛弃(@Override就是此类);

RetentionPolicy.CLASS 会被编译器保留在编译后的类文件中,但是会被虚拟机丢弃;

RetentionPolicy.RUNTIME 保留在运行时,可以被反射读取。这个注解还是比较重要的,我们一般是会使用RUNTIME级别,因为我们需要通过反射读取到这个注解。

本文来自作者:zz1080,不代表小新网立场!

转载请注明:https://www.xiaoxinys.cn/136383.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。