这篇文章将为大家详细讲解有关Java项目中的注解怎么利用反射机制读取,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、自定义注解
元注解:
@interface注解: 定义注解接口
@Target注解: 用于约束被描述的注解的使用范围,当被描述的注解超出使用范围则编译失败。如:ElementType.METHOD,ElementType.TYPE;
@Retention 注解:用于约束被定义注解的作用范围,作用范围有三个:
1、RetentionPolicy.SOURCE:作用范围是源码,作用于Java文件中,当执行javac时去除该注解。
2、RetentionPolicy.CLASS:作用范围是二进制码,就是存在于class文件中,当执行Java时去除该注解。
3、RetentionPolicy.RUNTIME:作用范围为运行时,就是我们可以通过动态获取该注释。
@Documented:用于指定javadoc生成API文档时显示该注释。
@Inherited:用于指定被描述的注释可以被其描述的类的子类继承,默认情况是不能被其子类继承。
自定义注解接口:
package com.java.annotation;
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;
@Target({ElementType.METHOD,ElementType.TYPE})
@Inherited
@Documented
@Retention(RetentionPolicy.RUNTIME)
public @interface Annotation_my {
String name() default "张三";//defalt 表示默认值
String say() default "hello world";
int age() default 21;
}