java中的元注解及自定义注解.doc

java中的元注解及自定义注解.doc

ID:57688537

大小:38.00 KB

页数:2页

时间:2020-09-01

java中的元注解及自定义注解.doc_第1页
java中的元注解及自定义注解.doc_第2页
资源描述:

《java中的元注解及自定义注解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、java中的元注解及自定义注解元注解,用来修饰其他的注解定义。1:@Target:(可以修饰注解)被@Target修饰的注解,能用于修饰那些程序元素。如果注解的参数设定了值,那么被修饰的注解只能按如下声明进行标注@Target(ElementType.TYPE)//只能修饰:接口、类、枚举、注解     @Target(ElementType.FIELD)//只能修饰:成员变量     @Target(ElementType.METHOD)//只能修饰:方法定义     @Target(Elemen

2、tType.PARAMETER)//只能修饰:方法参数     @Target(ElementType.CONSTRUCTOR)//只能修饰:构造函数     @Target(ElementType.LOCAL_VARIABLE)//只能修饰:局部变量     @Target(ElementType.ANNOTATION_TYPE)//只能修饰:注解     @Target(ElementType.PACKAGE)//只能修饰:包定义用法示例: @Target(value=ElementType.F

3、IELD);或@Target(ElementType.FIELD);或@Target(FIELD);@Target(value={FIELD,TYPE,METHOD});或@Target({FIELD,TYPE,METHOD});2:@Retention:(可以修饰注解)被@Retention修饰的注解,是否被编译器丢弃,或者保留在class文件中。用于指定被修饰的注解可以保留多长时间。使用此注解时,必须为该value成员变量指定值。@Retention(RetentionPolicy.CLASS)

4、默认值,表示被修饰的注解的信息,被保留在class文件(字节码文件)中,在运行时,虚拟机不再保留注解@Retention(RetentionPolicy.SOURCE)表示被修饰注解的信息,会被编译器抛弃,不会留在class文件中,注解的信息只会留在源文件中;@Retention(RetentionPolicy.RUNTIME)表示被修饰的注解的信息,被保留在class文件(字节码文件)中在运行时,虚拟机也会保留注解,程序可以通过反射获取该注解。用法示例:@Retention(RetentionPo

5、licy.RUNTIME)3:@Documented注解表明这个注解应该被javadoc工具记录.默认情况下,javadoc是不包括注解的.如果声明注解时指定了@Documented,则它会被javadoc之类的工具处理,所以注解类型信息也会被包括在生成的文档中4:@Inherited用于指定被其修饰的注解将具有继承性。如果定义的注解使用了@Inherited注解修饰,这个注解也将用于该类的子类注意:被@Inherited注解修饰的注解是被标注过的类的子类所继承。类并不从它所实现的借口继承该类型的注

6、解,方法也不能从它所重载的方法中继承这种注解。1:自定义注解的方法:①:定义注解:public@interface注解名{}②:定义注解的方法及成员变量:String[]value();a:方法是,无参数、无异常抛出的,方法名就是成员变量名;方法的返回值是成员变量的类型b:方法后面可以使用default关键字和一个默认数值来声明成员变量的默认值(空不能作为默认值)Stringname()default"小明";c:注解可以定义常量、静态成员类型(如枚举类型定义),注解也可以被实现或被继承。2:自定义

7、注解的使用①:自定义的注解可以修饰类、接口、方法和成员变量等程序元素②:使用了定义了成员变量的注解时,要为成员变量赋值③:使用了定义了默认值的成员变量的注解时,可以不为成员变量赋值(如果赋值,默认值将不起作用)

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

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

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