Annotation注解原理简介

参考:Spring注解原理的详细剖析与实现

注解(Annotation)提供了一种安全的类似注释的机制,为我们在代码中添加信息提供了一种形式化的方法

Annotation像一种修饰符一样,应用于包、类型、构造方法、方法、成员变量、参数及本地变量的申明语句中。

Annotation其实是一种接口。通过Java的反射机制相关的API来访问Annotation信息。相关类(框架或工具中的类)根据这些信息来决定如何使用该程序元素或改变它们的行为。Java语言解释器在工作时会忽略这些Annotation,因此在JVM中这些Annotation是“不起作用”的,只能通过配套的工具才能对这些Annotation类型的信息进行访问和处理。

Annotation和interface的异同:

1:annotition的类型使用关键字@interface而不是interface。它继承了java.lang.annotition.Annotition接口,并非申明了一个interface。
2: Annotation类型、方法定义是独特的、受限制的。
3:Annotation类型又与接口有着近似之处。它们可以定义常量、静态成员类型(比如枚举类型定义RequestMethod)。Annotation类型也可以如接口一般被实现或者继承。


Boy-20180723

你可能感兴趣的:(Annotation注解原理简介)