1.@Target:描述注解能够作用的位置(类,成员方法,成员变量)——@Target(value={ElementType.TYPE....}
2.@Retention:描述注解能被保留的阶段——
source:不会保留到字节码文件;
class:会保留到字节码文件,不会被jvm读取到;
runtime:会被jvm读取到。
3.@Documented:描述注解是否被抽取到api文档中。
4.@Inherited:描述注解是否被子类继承