黑马程序员技术交流社区
标题:
注解的三个生命周期,谁给详细解释下,听不太懂
[打印本页]
作者:
李志敏
时间:
2013-5-18 10:39
标题:
注解的三个生命周期,谁给详细解释下,听不太懂
本帖最后由 李志敏 于 2013-5-18 19:00 编辑
注解的生命周期
RetetionPolicy.SOURCE、RetetionPolicy.CLASS、RetetionPolicy.RUNTIME;
分别对应:java源文件-->class文件-->内存中的字节码。
是不是我们自己写的注解都要用RetetionPolicy.RUNTIME?
作者:
袁梦希
时间:
2013-5-18 12:44
如果问题已经解决了,那么大家请把帖子的类型改为“已解决”,在自己帖子的左下角点编辑,然后选择帖子的分类进行改正
。{:soso_e163:}
作者:
无妄无涯
时间:
2013-5-18 15:30
感觉你也没问什么的样子,如果一团模糊建议还是再看几遍视频。我这里稍微解释下。RetetionPolicy.SOURCE 的保留策略就是只存在与你书写时的源代码中,该注解只用于让编译器检查是否符合要求而已,检查完就被去除不保留到生成的class文件中。RetetionPolicy.CLASS 是默认情况下的保留策略,该策略的注解可以被编译器检查后继续留存到生成的class文件中,但是在被虚拟机调用时就不会载入该注解。RetetionPolicy.RUNTIME 自然就是一直保留到虚拟机调用的策略,由于虚拟机将该策略的注解载入了,因此我们就可以通过反射来获取这些注解。注解到底要保留到哪个阶段要看情况,只能说自定义注解需要保留到最后的情况比较常见而已。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2