下面要给大家介绍到的就是java @Deprecated注解,对于java @Deprecated注解你了解吗?不清楚的小伙伴可以一起通过下面的文章来学习一下。
java当中@Deprecated能够用来注解类、接口、成员方法和成员变量等,用于表示某个元素(类、方法等)已过时,在其他程序使用已过时的元素时,编译器将会给出警告。
使用@Deprecated注解示例代码:
@Deprecated public class Person { @Deprecated protected String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Deprecated public void setNameAndAge(String name, int age) { this.name = name; this.age = age; } @Override public String toString() { return "Person [name=" + name + ", age=" + age + "]"; } }
在上面的代码当中,第2行类Person、第4行的成员变量name和第24行的setNameAndAge方法都被@Deprecated注解,在Eclipse当中,这些被注解的API都会被画上删除线,调用这些 API代码也会有删除线,示例代码:
public class HelloWorld { public static void main(String[] args) { Person p = new Person(); p.setNameAndAge("C语言中文网", 20); p.name = "Java教程"; } }
在Eclipse当中代码显示:
从上可以看出,代码当中不仅有删除线还有编译警告。
Java 9为@Deprecated注解增加了(1)since:该String类型的属性指定该API从哪个版本被标记为过时;(2)forRemoval:该boolean类型的属性指定该API在将来是否会被删除这两个属性。
示例代码:
在上面的程序当中第12行代码使用了Test的print()方法,而Test类中定义info()方法时使用了 @Deprecated修饰,表示,该方法已过时,所以将会引起编译器警告。
@Deprecated的作用和文档注释中的@deprecated标记的作用基本上是一样的,可是,它们的用法存在着差别,前者是Java 5才支持的注解,不需要放在文档注释语法(/** ... */部分)中,而是直接用于修饰程序中的程序单元,如方法、类和接口等。
以上就是对于java @Deprecated注解的简单介绍了,你都清楚了吗?更多java入门内容,请继续通过本站来进行了解。
推荐阅读: