晚上才真正的理解了这个;
google 有了这个:
J2SE 5.0的三种内置注释类型
注解(annotation)是J2SE 5.0的新内容,它给我们提供了很好的编程支持,下面介绍一下其内置的三种注解类型:
1. @Override
@Override用在多态情况下,比如:
public abstract class Animal{
public void say(){
System.out.println("annimal is saying");
}
}
public class Cat extends Animal{
@Override
public void say(){
System.out.println("miao, miao");
}
}
通过@Override来告诉java编译器,say方法是重载的父类的方法,这样,当父类的say方法签名改名的话,比如增加了一些参数,那么子类的Cat中的say方法编译时就会报错,说没有正确的重载父类方法,所以,@Override可以帮我们验证程序的正确性,这一点,很有用。
2. @Deprecated
@Deprecated的意思和JavaDoc中的@deprecated注释在本质上是一样的,使用如下:
public class DeprecatedExample {
@Deprecated
public static void badMethod() { }
}
public class DeprecatedUser {
public static void main(String[] args){
DeprecatedExample.badMethod();
}
}
上面的代码如果用javac进行编译的话,会打印出如下信息:
Note: DeprecatedUser.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error
如果你按提示重新加-Xlint进行编译,你就可以得到错误的详细信息:
% javac -Xlint:deprecation
DeprecatedUser.java:3: warning: [deprecation] badMethod() in DeprecatedExample
has been deprecated
DeprecatedExample.badMethod();
需要注意的是:和javadoc中的@deprecated相比,@Deprecated并没有强大多少,因为它不支持参数,而@deprecated后面还可以跟字符串来给一些相关的信息,但@Deprecated做不到,但它提供了运行时自省的功能,来提示错误,所以建议@Deprecated和@deprecated同时使用。
3. @SuppressWarnings
顾名思义,就是抑制警告信息的出现,使用如下:
public class DeprecatedExample2{
@Deprecated
public static void foo() { }
}
public class DeprecatedUser2 {
@SuppressWarnings(value={"deprecation"})
public static void main(String[] args) {
DeprecatedExample2.foo();
}
}
上述@SuppressWarnings(value={"deprecation"})的作用就是抑制编译器报deprecation的错。
@SuppressWarnings(value={"deprecation"})只支持一个参数,是数组类型,所以你可以不用加value, 写成:@SuppressWarnings({"deprecation"});当想抑制多个类型的警告信息时,可写:@SuppressWarnings({"unchecked","fallthrough",deprecation"}).
注意:在JDK1.5.0 release中,@SuppressWarnings还没有得到完全支持,会在以后支持,但Sun并没有给出具体的时间。
original text
分享到:
相关推荐
J2SE5.0_CN.chm API中文手册
j2se5.0中文版api第2部分,因为上传权限有限,给大家带来不便,请见谅
JAVA API帮助文档 中文版 CHM版 J2SE5.0
很好用的J2SE 5.0 API,具有索引的功能!!!
很好的j2se的API
J2SE5.0 API.chm,这个是英文的,等会再上传中文的,两个加在一起太大了 只好分开传了。。。
Java (J2SE 5.0) and C# Comparison Java (J2SE 5.0) and C# Comparison
对于java开发人员来说 没有一个帮助文档是很郁闷的 尤其对于自学的朋友们,今天得到一个中文版的J2SE5.0的API,不敢独自享用,共享出来给大家,分为2个部分part01和part02
对J2SE 5.0中的一些新特性进行了精辟的讲解。
真正的j2se api 5.0 中文版帮助,有需要的可以下载.
在Eclipse 3.1中体验J2SE 5.0的新特性
提示:本人已将一次性可完整下载版上传,名称为:J2SE 5.0 API (中文版)方便网友下载! 很好用的J2SE 5.0 API,具有索引的功能!!! 下载前请注意:不过由于本人等级太低所以只能分3部分上传,劳烦您下载全部3部分...
提示:本人已将一次性可完整下载版上传,名称为:J2SE 5.0 API (中文版)方便网友下载! 很好用的J2SE 5.0 API,具有索引的功能!!! 下载前请注意:不过由于本人等级太低所以只能分3部分上传,劳烦您下载全部3部分...
提示:本人已将一次性可完整下载版上传,名称为:J2SE 5.0 API (中文版)方便网友下载! 很好用的J2SE 5.0 API,具有索引的功能!!! 下载前请注意:不过由于本人等级太低所以只能分3部分上传,劳烦您下载全部3部分...
J2SE 5.0- Java安全及网络计算的最新技术
Java API帮助文档 J2SE5.0 网页版
2022年J2SE5.0新特性之使用代理服务器Java教程.docx
由韩国出版的J2SE 5.0版的JAVA 2教材源代码
本文将介绍J2SE5.0中三个比较重要的特性:枚举类型,注释类型,范型,并在此基础上介绍在如何在Eclipse3.1开发环境中开发枚举类型,注释类型和范型应用。J2SE5.0(Tiger)的发布是Java语言发展史上的一个重要的里程碑,是...
一份我觉得不错的中文J2SE API文档,拿来给大家一起分享