黑马程序员技术交流社区

标题: 注解生命周期是什么? [打印本页]

作者: 黑马-zhangping    时间: 2012-10-28 12:10
标题: 注解生命周期是什么?
注解生命周期是什么?
作者: 邹海洋    时间: 2012-10-28 12:15
通俗的讲就是能用多长时间。即被创建到等待回收的时间。
作者: 林志进    时间: 2012-10-28 13:01
注解生命周期有3个阶段:源文件,class,字节码
从源程序一直到运行程序这个过程,java将源程序中的注解不断的去除,加上retention这个源注解(描述生命周期)来确定我们的注解在哪里保存
以下是3个状态直接转换时注解的变化:
源文件-->class:
在源程序加上一个注解,源程序通过javac编译成class文件,再编译class文件的时候,可能会将里面的一些注解去掉,这时候我们就拿不到我们想要的注解。

class-->字节码:
注解跟源程序一起被javac编译到class文件中,这时我们用这个class就需要通过类加载器加载到内存中,在这个时候class文件中并不是字节码,加载完以后经过安全处理等其他操作后生成的2进制才是字节码,在这当中可能会把一些注解去掉。

@Retention(RetentionPolicy.SOURCE)保留在源代码阶段(编译器编译是用,源文件-->class阶段)
@Retention(RetentionPolicy.CLASS)默认值,保留在class中(一直保存到生成class文件后)
@Retention(RetentionPolicy.RUNTIME)保留在字节码中(直译保存到运行时)
作者: 聆听    时间: 2012-10-28 13:18
软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
作者: 刘丽娜    时间: 2012-10-28 13:42
藤椅 那块说的已经很全了 就不赘述了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2