黑马程序员技术交流社区

标题: 基本Annotation@Deprecated的作用? [打印本页]

作者: 张贺    时间: 2014-3-13 22:58
标题: 基本Annotation@Deprecated的作用?
@Deprecated作用于程序元素时,如果有别的程序调用这个程序元素,编译器会给出警告,但是被标记的元素仍可以正常使用,那@Deprecated的作用是什么?

作者: 房建斌    时间: 2014-3-13 23:12
这个主要是用来写API给别人用的,假如你写了一个API,版本1.0,可是过了几年你发现这个API效率不高,于是乎你写了一个更好的方法来替代这个API,版本2.0,但是你又不能删除先前的那个API,因为那个1.0版本还有人用,你要是删除了别人的代码就不能用了,但是你希望以后的人用你2.0版本的API,这是给1.0版本的API打上@Deprecated表示这个API是过时的,提示他用新的API,当别人调用这个API时就会发出警告的,当有人看到警告不爽时,就去查你的文档,寻找替换API了。
作者: 黑马-马磊    时间: 2014-3-13 23:19
1). @Target
(2). 作用
用于指定被修饰的注解的适用范围,即被修饰的注解可以用来修饰哪些程序元素
2). @Retention

(2). 作用
用来描述被修饰的注解的生命周期
3). @Documented
(2). 作用
[1]. 用于指定被修饰的注解将被javadoc工具提取成文档。
4). @Inherited
(2). 作用
[1]. 用于指定被@Inherited修饰的注解具有继承性

作者: 张贺    时间: 2014-3-14 08:07
房建斌 发表于 2014-3-13 23:12
这个主要是用来写API给别人用的,假如你写了一个API,版本1.0,可是过了几年你发现这个API效率不高,于是乎 ...

谢谢,明白了!:)




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