Java注解基础

2019-11-02  本文已影响0人  melodylzl

注解的本质

注解的本质就是一个继承了Annotation接口的接口

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {

}

这是注解 @Override 的定义,其实它本质上就是:

public interface Override extends Annotation{
    
}

元注解

元注解就是修饰注解的注解,Java中有以下几个元注解:

@Target的几个枚举值:

@Retention的几个枚举值:

JAVA 的内置三大注解

自定义注解

定义

@Target({ElementType.METHOD,ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
    String   value();
    String   name();
    int      age();
    String[] newNames();
}

使用

@MyAnnotation(
    value="123",
    name="Jakob",
    age=37,
    newNames={"Jenkov", "Peterson"}
)
public class MyClass {


}

参考文献:

上一篇 下一篇

猜你喜欢

热点阅读