Java注释中的@deprecated与源代码中的@Deprecated
用 @Deprecated注释的程序元素,不鼓励程序员使用这样的元素,通常是因为它很危险或存在更好的选择。在使用不被赞成的程序元素或在不被赞成的代码中执行重写时,编译器会发出警告。
其次,请注意标题,这两个标记有大小写之分,一个是D,一个是d。
源代码标记@Deprecated是在JDK1.5中作为内置的annotation引入的,用于表明类(class)、方法(method)、字段(field)已经不再推荐使用,并且在以后的JDK版本中可能将其删除,编译器在默认情况下检测到有此标记的时候会提示警告信息。
Java注释中的@deprecated用于在用Javadoc工具生成文档的时候,标注此类/接口、方法、字段已经被废止。
不过后者还有一个功能就是和源代码标记@Deprecated同样的功能,在JDK1.4版本之后,该功能被@Deprecated所取代。
java.lang.Deprectated是J2SE 5.0中标准的Annotation型态之一,它对编译器说明某个方法已经不建议使用,如果有人试图使用或重新定义该方法,必须提出警示讯息。
举个例子来说,您可能定义一个CustomObject类别,并在当中定义有getSomething()方法,而在一段时间之后,您不建议使用这个方法 了,并要将这个方法标示为deprectated,您可以这么作:
CustomObject.java
public class CustomObject { @Deprecated public String getSomething() { return "something"; } }
如果有人试图在继承这个类别后重新定义getSomething(),或是在程序中呼叫使用getSomething()方法,则进行编译时,就会出现这 个警讯:
Note: SubCustomObject.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details.
想要知道详细的警讯内容的话,可以在编译时加上-Xline:deprecation自变量,例如:
>javac -Xlint:deprecation SubCustomObject.java SubCustomObject.java:5: warning: [deprecation] getSomething() in CustomObject ha s been deprecated object.getSomething(); ^ 1 warning
java.lang.Deprecated是个Marker annotation,简单的说就是用于标示,annotation名称本身即包括了要给工具程序的信息。
转自
http://lijinwei-123.i.sohu.com/blog/view/161053895.htm
相关推荐
java用 @interface Annotation{ } 定义一个注解 @Annotation,一个注解是一个类。 @Override,@Deprecated,@SuppressWarnings为常见的3个注解。 注解相当于一种标记,在程序中加上了注解就等于为程序加上了某种标记...
JPA(Java persistent api) 是sun 公司持久层标准,它用注释来维持类和表的对应关系: 注意:注释跟类、接口、枚举 是同一级别 使用:@注释名(注释属性名=与注释属性类型对应的值) 注释定义: @Target({ElementType....
在 Java 方法中,如果需要废弃一个方法,只需要在方法钱加上 @Deprecated 即可,例如这样: @Deprecated public void test(){ } 但是如果在 Kotlin 代码中直接使用这个注释,就存在问题了: Deprecated 翻看源码...
Java 文档注释 Java 支持三种注释方式。前两种分别是 // 和 /* */,第三种被称作说明注释,它以 /** 开始,以 */结束。 说明注释允许你在程序中嵌入关于程序的信息。你可以使用 javadoc 工具软件来生成信息,并输出...
四种元注释:java.lang.annotation中的类 元注释:注释注释的注释,用来限定注释的特征 @Terget 用来限定某个注释的使用范围,可以对什么元素进行注释 @Retention 用来描述注释的有效范围 @Inherited ...
java注解和注释一样,不会影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息。在javaSE中,注解的功能比较单一,例如标记过时的功能,忽略警告等等。但注解在javaEE中占据了更重要的角色,尤其是...
引入的一种注释机制。 Java 语言中的类、方法、变量、参数和包等都可以被标注。 内置的注解 作用在代码的注解是 @Override - 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报...
outputMax.java 求两个数中的最大数 overflowExample.java 演示溢出 precedence.java 演示自加运算符的优先级 primeNumber.java 输出100-200之间的所有素数 ranking.java 评定成绩等级 rankingBySwitch.java ...
提到注解,我们会不由的想到注释,其实注解和注释不是一个东西,注释的作用就是解释代码,方便理解和阅读,说白了就是给程序员看的。而注解则不是,注解的作用比较大,可以进行编译检查、生成doc文档或者进行代码...
最大程度地利用 Java 的语法特性,你只管用心设计好接口,添加必要的注释,JApiDocs 会帮你导出一份漂亮的 Html 文档,并生成相关的 Java 和 Object-C 相关数据模型代码,从此,Android 和 IOS 的同学可以少敲很多...
文章目录一、注解是什么?二、JDK中预定义的一些注解1.@Override2.@Deprecated3.@SuppressWarnings4.@SafeVarargs5.@... 从JDK5开始,Java增加对元数据的支持,也就是注解,注解与注释是有一定区别的,可以把
流程引擎基础案例,全中文文档 Flowable可以作为一个jar替换掉到一个已编译的...如果在MINOR版本中引入API更改,则策略是保留向后兼容的版本,并使用@Deprecated注释。这样被弃用的API将在稍后被删除两个 MINOR版本。
鹦鹉java基础练习逻辑书名:java编程的逻辑反映:21章-反射注释:22章-注解内置注解: @Override :不写不改变方法重新的本质@Deprecated :Java9多了因为,forRemoval属性@SuppressWarning框架和库的注解:自定义...
第1章 Java概述 1 1.1 Java语言的发展简史 2 1.2 Java的竞争对手及各自优势 4 1.2.1 C#简介和优势 4 1.2.2 Ruby简介和优势 4 1.2.3 Python的简介和优势 5 1.3 Java程序运行机制 5 1.3.1 高级语言的运行机制 6...
-hotspot is a synonym for the "client" VM [deprecated] The default VM is client. -cp -classpath A : separated list of directories, JAR archives, and ZIP archives to search for class files. -D...
2.3.4 Java代码中的注释23 2.3.5 常见错误解析24 2.4 Java类库组织结构和文档27 2.5 Java虚拟机简介28 2.6 Java技术两种核心运行机制29 2.7 上机练习30 第3章 3.1 变量32 3.1.1 什么是变量32 3.1.2 为什么需要变量32...
注解说白了就是对程序做出解释,与我们在方法、类上的注释没有区别,但是注解可以被其他程序所读取,进行信息处理,否则与注释没有太大的区别。 2.内置注解 内置注解就是我们的jdk所带的一些注解。常用的三个注解: ...
您可以将第 3 方类或方法标记为已弃用,这是使用@Deprecated注释无法实现的, 用户可以使用直观的格式配置包含已弃用类或方法的列表; 此外,插件的用户可以定义方法或类弃用的原因,因此有关弃用类或方法的信息...
将incap库添加到您的编译时依赖项中,并将incap-processor到您的注释处理器路径中: 与Gradle dependencies { compileOnly( " net.ltgt.gradle.incap:incap: ${ incap.version } " ) annotationProcessor( " ...