从来就没有救世主  也不靠神仙皇帝  要创造人类的幸福  全靠我们自己  

java 注解annotation

 

    类、方法、变量、参数、包都可被注解标注

    通过反射获取标注内容

    编译器生成类文件时,标注可被嵌入到字节码中

 

    jdk1.8带的元注解:

    

 

    注解处理类:

        实现:java.lang.reflect.AnnotatedElement 接口

        Class、Method、Field、Constructor等与反射相关的类、接口都实现了此接口

 

 

 

1. 常用元注解

1.1 

(1)@Override

 

(2)@deprecated

   

 

(3)@SuppressWarnings

    压制警告信息

@SuppressWarnings("all")
public class AnalysisAnno {
    public static void main(String[] args) {
    }
}

 

 

1.2  Target

    描述注解修饰的范围   取值:java.lang.annotation.ElementType

TYPE:描述类、接口、enum类型

METHOD:描述方法

PACKAGE:描述包

PARAMETER:描述方法的变量

FIELD:

CONSTRUCTOR:

LOCAL_VARIABLE:

ANNOTATION_TYPE:

//1.8
TYPE_PARAMETER:
TYPE_USE:

 

1.3 Retention

    注解保留的时间长短  取值:java.lang.annotation.RetentionPolicy

SOURCE:在源文件中有效,编译时会被忽略
CLASS:和源文件一起编译在class文件中,运行时忽略。默认。
RUNTIME:运行时有效

    只有为RUNTIME时,才能通过注解反射获取到注解

 

 

 

2. 自定义注解

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    

posted @ 2020-11-09 22:06  T,X  阅读(90)  评论(0)    收藏  举报