- annotation的使用:
- 1、理解注解:
- ①:jdk5.0新增的功能
- ②:annotation 其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,
- 并让程序员在不改变原有逻辑的情况下,在一些源文件里嵌入一些补充信息
- ③:在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等,在JAVAEE/安卓等中注解占据了更重要的角色,
- 例如用来配置应用程序的任何切面,代替JAVAEE旧版中所遗留的繁杂代码和XML配置等
- 2、Annotation的使用示例:
- 示例1:生成文档相关的注解
- 示例2:在编译时进行格式检查(JDK内置的三个基本注解)
- @Override:限定重写父类方法,该注解只能用于方法
- @Deprecated:用于表示所修饰的元素已经过时
- @SuppressWarnings:抑制编译器警告
- 示例3:跟踪代码依赖性,实现替代配置文件功能
- 3.如何自定义注解:参照@suppresswarnings定义
-
①:注解声明为:@interface
-
②:内部定义成员,通常使用value表示
-
③:可以指定成员的默认值,使用default定义
-
④:如果自定义注解没有成员,表示一个标识作用
-
如果注解有成员,在使用注解时,需要指明 成员的值(有默认值可以不用)
- 4.jdk提供的四种元注解
- Retention:只能用于修饰一个Annotation定义,用于指定该Annotation的生命周期
- Target:用于修饰注解的定义,用于修饰那些程序元素
- Documented:表示所修饰的注解在被javadoc解析时,保留下来
- Inherited:被他修饰的Annotation将具有继承性
- 5.通过反射来获取注解信息–反射内容具体阐述
- jdk8的新特性:可重复注解:类型注解
- 6.可重复注解:①在MyAnnotation上声明一个@Repeatable,成员值为MyAnnotations.class
-
②MyAnnotation的Targget和Retention和MyAnnotations相同。
- 类型注解:TYPE_PARAMETER:意味着声明的注解可以作用在泛型类,泛型接口,泛型方法上。
-
TYPE_USE
*