这个注解是用来标记过时的元素,编译器在编译阶段遇到这个注解时会发出提醒警告,告诉开发者正在调用一个过时的元素比如过时的方法、过时的类、过时的成员变量。
这时sayHello()方法上面被一条直线划了一条,这其实就是编译器识别后的提醒效果:
这个注解再熟悉不过了,提示该方法是接口方法的实现或者是子类重写的父类的方法。
阻止警告的意思,上面说过调用被@Deprecated注解的方法后,编译器会警告提醒,而有时候开发者会忽略这种警告,他们可以在调用的地方通过@SuppressWarnings达到目的。
这个时候sayHello()就不会被编译器处以下划线的警告了。
参数安全类型注解。它的目的是提醒开发者不要用参数做一些不安全的操作,它的存在会阻止编译器产生unchecked这样的警告,它是在Java 1.7的版本中加入的。
上面的代码中,编译阶段不会报错,但是运行时会抛出ClassCastException这个异常,所以它虽然告诉开发者要妥善处理,但是开发者自己还是搞砸了。
| 欢迎光临 教育改变生活 (http://bbs.goldoar.com/) | Powered by Discuz! X3.2 |