CoreJava经典教程十七.doc

CoreJava经典教程十七.doc

ID:62033080

大小:41.00 KB

页数:9页

时间:2021-04-15

CoreJava经典教程十七.doc_第1页
CoreJava经典教程十七.doc_第2页
CoreJava经典教程十七.doc_第3页
CoreJava经典教程十七.doc_第4页
CoreJava经典教程十七.doc_第5页
资源描述:

《CoreJava经典教程十七.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、JAVA5.0的注释(Annotation)描述代码的代码。给编译器看的代码,作用是规范编译器的语法。class Student{ﻩ@OverridepublicString toString(){ﻩﻩreturn“student”;ﻩ}}类型(接口)1.标记注释标记注释中没有属性,所以也不需要为属性赋值@Override2.单值注释单值注释中只能定义一个属性.@注释名(prameter=10)ﻩint parameter特例:@注释名(value“134”)(当单值注释的属性名为value时,可以省略属性名,直接写值)@Sup

2、eressWarning({“ddd”,”aaa”,”ccc"}) //JVM还没有实现这个注释3.普通注释(多值注释)(key1=value,……)4.自定义注释public @interfaceTest{}在自定义注释时,要用注释来注释(描述)注释.@Target(value={……}),用来描述自定义注释所适用的程序元素的种类.单值注释这个注释的值只能是ElementType枚举值,只能使用以下的值ANNOTATION_TYPE 注释类型声明CONSTRUCTOR构造方法声明FIELD属性声明(包括枚举常量)LOCAL_V

3、ARIABLE 局部变量声明METHOD方法声明(常用)PACKAGE包声明PARAMETER参数声明 TYPE类、接口(包括注释类型)或枚举声明(常用)例:@Target({ElementType.METHOD, ElementType.TYPE})//表示这个注释可用的范围,这个注释可以用在方法和类型及接口。@Retention(value=……),描述(注释)注释能够保留到什么时候。单值注释其中的值只能是以下的RetentionPolicy枚举的值CLASS编译器将把注释记录在类文件中,但在运行时VM不需要保留注释.RUN

4、TIME编译器将把注释记录在类文件中,在运行时 VM 将保留注释,因此可以反射性地读取。SOURCE编译器要丢弃的注释。例:@Retention(RetentionPolicy.RUNTIME)//编译器将把注释记录在类文件中,在运行时VM 将保留注释,因此可以反射性地读取.@Documented表示某一类型的注释将通过javadoc和类似的默认工具进行文档化@Inherited表示注释类型该注释会被自动继承注释的属性类型可以是8种基本类型、String、Enum、Class、Annotation以及它们的数组例:@Test()

5、publicclassMyClass2{@Test()ﻩpublicvoidstudy(Stringname){ﻩﻩSystem.out。println(”Study"+name);ﻩ}@Test(value=”Meal")//单值注释ﻩ@Author(value={@Name(firstName=”Liu”,lastName="Chunyang"),@Name(firstName="Xue",lastName="Hiloo")})//单值注释中是用数组类型地赋值方法ﻩpublicvoideat(String food){Sys

6、tem。out。println("Eat"+food);ﻩ}}自定义注释的写法例:importjava。lang.annotation。*;@Target({ElementType.METHOD})//表示这个注释可用的范围,这个注释只能用在方法之上。@Retention(RetentionPolicy.RUNTIME)//编译器将把注释记录在类文件中,在运行时VM将保留注释,因此可以反射性地读取。public @interfaceAuthor {ﻩName[]value();/*定义注释的属性,注意属性后面要价括号,这个属性既

7、是属性又是方法,可以返回属性的值*/}importjava。lang.annotation.*;@Target({ElementType.METHOD,ElementType。TYPE})//这个注释可用于类,接口和方法@Retention(RetentionPolicy。RUNTIME)public@interfaceTest{ﻩStringvalue()default”ABC”;//定义注释的属性及其默认值}处理自定义注释的类例:importjava.lang.reflect.*;publicclassTestFramewo

8、rk{publicstaticvoidmain(String[]args)throwsException{ﻩﻩClassc=Class。forName("MyClass2");//获取有注释的类的类对象ﻩﻩMethod[]ms=c。getMethods();//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。