在Java 程序中,除了源程序之外,我们还会用到Javadoc 标签对类、方法或成员变量进行注释。JDK5.0 的注解可以看成是Javadoc 标签和Xdoclet 标签的延伸和发展。在JDK5.0 中我们可以自定义标签,并通过Java语言的反射机制获取类中标注的注解。
@Retention(RetentionPolicy.RUNTIME) // 声明注解的保留期限
@Target(ElementType.METHOD) // 可使用注解的目标类型
public @interface AnnoTest { // 定义注解
boolean value() default true; // 声明注解成员
}
public class UseAnnotation {
@AnnoTest(value = true)
public void method1(String name) {
System.out.println("method1 " + name);
}
@AnnoTest(value = false)
public void method2(String name) {
System.out.println("method2 " + name);
}
}
public class AnnoClient {
public static void main(String[] args) {
Class<UseAnnotation> clazz = UseAnnotation.class;
Method[] methods = clazz.getDeclaredMethods();
for (Method method : methods) {
AnnoTest at = method.getAnnotation(AnnoTest.class);
if (at != null) {
if (at.value()) {
System.out.println(method.getName() + " need test.");
} else {
System.out.println(method.getName() + " do not need test.");
}
}
}
}
}
public enum RetentionPolicy {
/**
* Annotations are to be discarded by the compiler.
*/
SOURCE,
/**
* Annotations are to be recorded in the class file by the compiler
* but need not be retained by the VM at run time. This is the default
* behavior.
*/
CLASS,
/**
* Annotations are to be recorded in the class file by the compiler and
* retained by the VM at run time, so they may be read reflectively.
*
* @see java.lang.reflect.AnnotatedElement
*/
RUNTIME
}
public enum ElementType {
/** Class, interface (including annotation type), or enum declaration */
TYPE,
/** Field declaration (includes enum constants) */
FIELD,
/** Method declaration */
METHOD,
/** Parameter declaration */
PARAMETER,
/** Constructor declaration */
CONSTRUCTOR,
/** Local variable declaration */
LOCAL_VARIABLE,
/** Annotation type declaration */
ANNOTATION_TYPE,
/** Package declaration */
PACKAGE
}
分享到:
相关推荐
Java 注解(Annotation)是自 JDK 5.0 版本引入的一种元数据机制,用于向编译器、开发工具和运行时系统提供有关代码的附加信息。它们并不直接影响程序的执行,但可以用于代码分析、编译时验证或者运行时处理。本文将...
在Java编程语言中,Annotation(注解)是一种元数据,它提供了在编译时和运行时为代码添加信息的方式。注解是自Java 5版本引入的特性,它增强了代码的可读性和可维护性,同时也简化了某些编程任务。在本篇中,我们将...
标签:annotation、api、jakarta、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...
java8 源码 Java注解 简介 由于无论在Java后台或者Android开发中我们经常遇到注解这个...通过@Target进行添加到注解中,说明了Annotation所修饰的对象范围:Annotation可被用于 packages、types(类、接口、枚举、Ann
Java详细说明书的范式是编写高质量Java程序的重要指导原则,它涵盖了从代码规范、设计模式到项目管理等多个方面。在Java编程中,良好的文档是非常关键的,它有助于提高代码的可读性、可维护性和团队协作效率。以下是...
10. **注解(Annotation)**:从Java 5开始,注解提供了一种元数据的形式,用于向编译器、JVM或其他工具提供信息,比如用于代码的自动生成、运行时验证等。 11. **模块系统**:Java 9引入了模块系统,帮助大型项目...
标签:annotation、javax、api、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...
标签:annotation、api、jakarta、jar包、java、中英对照文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译...
标签:annotation、javax、api、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准...
文档由五篇博客组成,说明了如何使用代理技术实现Annotation HttpClient通过,阅读这五篇博客,应该能够大致了解如何实现一个Annotation类型应用的框架。此外,配备了相应的Annotation HttpClient的源码,以供大家...
标签:annotation_1、specs、apache、0_spec、geronimo、jar包、java、API文档、中文版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持...
javaAnnotation.doc java_xml_api.chm JAVA分页大全.txt JAVA设计模式.chm JAVA配置文件编写说明文档.pdf jboss.pdf log4j使用教程.txt struts_action.txt struts标签.chm swing02.doc Tomcat.chm webAndXml.pdf ...
`javax.annotation-api-1.3.2.jar` 包是Java标准版(Java SE)中的一个关键组件,它包含了用于开发和实现注解的API。这个API主要用于提供一些预定义的注解,这些注解可以增强代码的功能性和可维护性,同时减少对传统...
标签:baomidou、mybatis、plus、annotation、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和...
标签:annotation、javax、api、jar包、java、API文档、中英对照版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...
虽然 Java 虚拟机在执行过程中会忽略这些 Annotation,但通过配套工具(如注解处理器)可以对 Annotation 信息进行访问和处理。 #### 二、Annotation 的定义与使用 ##### 2.1 Annotation 的概念和语法 - **...
Java 5.0 中定义了 4 种标准的元注解(meta-annotation),它们被用来提供对其他注解的说明。 1. @Target @Target meta-annotation 用于说明 Annotation 所修饰的对象范围。它可以被用于 packages、types(类、...
赠送jar包:javax.annotation-api-1.3.2.jar; 赠送原API文档:javax.annotation-api-1.3.2-javadoc....人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。
评论一下就可以拿回那一分了。 资源包括: 《JSF入门》简体中文版 struts标签(中文) Ant使用指南.pdf cvs.pdf eclipse插件开发.doc ...javaAnnotation.doc Hibernate_3.2.0_Reference_zh_CN.chm Tomcat.chm
9. **注解**:`java.lang.annotation`,提供了元数据功能,可以用来标记代码并提供编译时或运行时的信息,如`@Override`、`@Deprecated`等。 压缩包中的`JDK 1.8 API.CHM`文件是一个帮助文档,通常包含了Java API的...