java《注解解析》.doc

上传人:灯火****19 文档编号:136109612 上传时间:2020-06-24 格式:DOC 页数:31 大小:244KB
返回 下载 相关 举报
java《注解解析》.doc_第1页
第1页 / 共31页
java《注解解析》.doc_第2页
第2页 / 共31页
java《注解解析》.doc_第3页
第3页 / 共31页
java《注解解析》.doc_第4页
第4页 / 共31页
java《注解解析》.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《java《注解解析》.doc》由会员分享,可在线阅读,更多相关《java《注解解析》.doc(31页珍藏版)》请在金锄头文库上搜索。

1、Java注解(Annotation) (1) Annotation(注释)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。注释是以注释名在代码中存在的,根据注释参数的个数,我们可以将注释分为:标记注释、单值注释、完整注释三类。它们都不会直接影响到程序的语义,只是作为注释(标识)存在,我们可以通过反射机制编程实现对这些元数据的访问。另外,你可以在编译时选择代码里的注释是否只存在于源代码级,或者它也能在class文件中出现。元数据的作用如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:编写文档:通过代

2、码里标识的元数据生成文档。代码分析:通过代码里标识的元数据对代码进行分析。编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查。基本内置注释OverrideJava代码1. package com.iwtxokhtd.annotation; 2. /*3. * 测试Override注解4. * author Administrator5. *6. */ 7. public class OverrideDemoTest 8. 9. /Override 10. public String tostring() 11. return 测试注释; 12. 13. package com.iwt

3、xokhtd.annotation;/* 测试Override注解* author Administrator*/public class OverrideDemoTest /Overridepublic String tostring()return 测试注释;Deprecated的作用是对不应该在使用的方法添加注释,当编程人员使用这些方法时,将会在编译时显示提示信息,它与javadoc里的deprecated标记有相同的功能,准确的说,它还不如javadoc deprecated,因为它不支持参数,使用Deprecated的示例代码示例如下:Java代码1. package com.iwt

4、xokhtd.annotation; 2. /*3. * 测试Deprecated注解4. * author Administrator5. *6. */ 7. public class DeprecatedDemoTest 8. public static void main(String args) 9. /使用DeprecatedClass里声明被过时的方法 10. DeprecatedClass.DeprecatedMethod(); 11. 12. 13. class DeprecatedClass 14. Deprecated 15. public static void Depr

5、ecatedMethod() 16. 17. package com.iwtxokhtd.annotation;/* 测试Deprecated注解* author Administrator*/public class DeprecatedDemoTest public static void main(String args) /使用DeprecatedClass里声明被过时的方法DeprecatedClass.DeprecatedMethod();class DeprecatedClassDeprecatedpublic static void DeprecatedMethod() Sup

6、pressWarnings,其参数有:deprecation,使用了过时的类或方法时的警告unchecked,执行了未检查的转换时的警告fallthrough,当 Switch 程序块直接通往下一种情况而没有 Break 时的警告path,在类路径、源文件路径等中有不存在的路径时的警告serial,当在可序列化的类上缺少 serialVersionUID 定义时的警告finally ,任何 finally 子句不能正常完成时的警告all,关于以上所有情况的警告Java代码1. package com.iwtxokhtd.annotation; 2. 3. import java.util.Ar

7、rayList; 4. import java.util.List; 5. 6. public class SuppressWarningsDemoTest 7. 8. public static List list=new ArrayList(); 9. SuppressWarnings(unchecked) 10. public void add(String data) 11. list.add(data); 12. 13. package com.iwtxokhtd.annotation;import java.util.ArrayList;import java.util.List;

8、public class SuppressWarningsDemoTest public static List list=new ArrayList();SuppressWarnings(unchecked)public void add(String data)list.add(data);(2)自定义注释它类似于新创建一个接口类文件,但为了区分,我们需要将它声明为interface,如下例:Java代码1. public interface NewAnnotation 2. public interface NewAnnotation 使用自定义的注释类型Java代码1. public

9、class AnnotationTest 2. NewAnnotation 3. public static void main(String args) 4. 5. public class AnnotationTest NewAnnotationpublic static void main(String args) 为自定义注释添加变量Java代码1. public interface NewAnnotation 2. String value(); 3. public interface NewAnnotation String value();Java代码1. public clas

10、s AnnotationTest 2. NewAnnotation(main method) 3. public static void main(String args) 4. saying(); 5. 6. NewAnnotation(value = say method) 7. public static void saying() 8. 9. public class AnnotationTest NewAnnotation(main method)public static void main(String args) saying();NewAnnotation(value = s

11、ay method)public static void saying() 定义一个枚举类型,然后将参数设置为该枚举类型,并赋予默认值Java代码1. public interface Greeting 2. public enum FontColor 3. BLUE,RED,GREEN 4. ; 5. String name(); 6. FontColor fontColor() default FontColor.RED; 7. public interface Greeting public enum FontColorBLUE,RED,GREEN;String name();FontC

12、olor fontColor() default FontColor.RED; 这里有两种选择,其实变数也就是在赋予默认值的参数上,我们可以选择使用该默认值,也可以重新设置一个值来替换默认值Java代码1. NewAnnonation(main method) 2. public static void main(String args) 3. saying(); 4. sayHelloWithDefaultFontColor(); 5. sayHelloWithRedFontColor(); 6. 7. 8. NewAnnonation(say method) 9. public static void saying() 10. 11. 12. /此时的fontColor为默认的RED 13. Greeting(name=defaultfontcolor) 14. public static void sayHelloWithDefaultFontColor() 15. 16. 17. /现在将fontColor改为BLUE 18. Greeting(name=notdefault,fontColor=Greeting.FontColor.BLUE) 19. public static void sayH

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号