黑马程序员--关于注解的理解
2015-12-24 10:26
288 查看
--------android培训java培训期待与您交流------
关于注解:有三个相关概念;
注解类:定义的注解类@interface
使用注解的类:使用了某个注解的类即在类上,方法上,或者成员变量上写上比如@Override的类;
对注解进行处理的类:对使用了某个注解的类进行处理的类;底层用的是反射机制;
这个可以对比jsp中的标签及JSTL,EL表达式;
我们知道这个标签和表达式是不能工作的,真正起作用的还是其后台的一个个的标签处理器类;
我们知道使用jstl表达式需要有相关的jar包支持,这些标签处理器类就放在这些包中;
至于对注解怎么去处理,有多种方式,但是最基本的原理就是反射了,一些相关的类比如
Introspector,BeanInfo,Method等;
我觉得我们只要学会如何去使用,看的懂别人写的注解和注解处理器类就可以了,真正要你去写出一个是不太现实的
不重复发明轮子。
注解的生命周期:
源文件阶段(source,运行阶段(runtime),class阶段(默认的);
所谓的注解的生命周期,说白了就是问注解存留到哪个阶段,或者说这个
注解是给谁看的,是给编译器看的还是虚拟机看的。。。
比如@Override,是给编译器看的,生命周期是resource,
给注解加属性:即
写一个抽象方法,指定返回值;可以添加默认值
使用时如果仅有一个属性需要添加属性值,可不写等号;
例如
int value();
String name() default "itcast";
@ItcastAnnotation(3);--等同于value=3;
元数据,元注解,元信息;
所谓的元就是更细节化的东西,元注解就是注解的注解,元信息就是
信息的信息;
@Target是一个元注解,是指定某个注解的作用区间,即这个注解使用在哪里,是类上还是方法上还是字段上,还是都有,即可以指定一个或者多个;
转发至微博
转发至微博
关于注解:有三个相关概念;
注解类:定义的注解类@interface
使用注解的类:使用了某个注解的类即在类上,方法上,或者成员变量上写上比如@Override的类;
对注解进行处理的类:对使用了某个注解的类进行处理的类;底层用的是反射机制;
这个可以对比jsp中的标签及JSTL,EL表达式;
我们知道这个标签和表达式是不能工作的,真正起作用的还是其后台的一个个的标签处理器类;
我们知道使用jstl表达式需要有相关的jar包支持,这些标签处理器类就放在这些包中;
至于对注解怎么去处理,有多种方式,但是最基本的原理就是反射了,一些相关的类比如
Introspector,BeanInfo,Method等;
我觉得我们只要学会如何去使用,看的懂别人写的注解和注解处理器类就可以了,真正要你去写出一个是不太现实的
不重复发明轮子。
注解的生命周期:
源文件阶段(source,运行阶段(runtime),class阶段(默认的);
所谓的注解的生命周期,说白了就是问注解存留到哪个阶段,或者说这个
注解是给谁看的,是给编译器看的还是虚拟机看的。。。
比如@Override,是给编译器看的,生命周期是resource,
给注解加属性:即
写一个抽象方法,指定返回值;可以添加默认值
使用时如果仅有一个属性需要添加属性值,可不写等号;
例如
int value();
String name() default "itcast";
@ItcastAnnotation(3);--等同于value=3;
元数据,元注解,元信息;
所谓的元就是更细节化的东西,元注解就是注解的注解,元信息就是
信息的信息;
@Target是一个元注解,是指定某个注解的作用区间,即这个注解使用在哪里,是类上还是方法上还是字段上,还是都有,即可以指定一个或者多个;
转发至微博
转发至微博
相关文章推荐
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员---关于枚举的理解
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员--用户注册管理系统(Sp…
- 黑马程序员--用户注册登录管理系统…
- 黑马程序员--JAVA中23种设计模式(-…
- [JAVA面试算法] 用代码体现“水仙花数”
- StackOverflow程序员推荐:每个程序员都应读的30本书
- 一道面试题引发的对android中context的研究(二)
- 一道面试题引发的对android中context的研究(一)-SharedPreference是否可以将文件保存在SD卡上
- 看顶级高手如何编程--从带程序员新手想到的
- 从测试角度看职业生涯
- 程序员自学需要具备的基本技能和素质
- Android之常见面试题
- c#面试题
- c#面试题
- 数据分析师常见的十道面试题目