`

java注解使用例子

 
阅读更多

1、注解定义:

import java.lang.annotation.Documented;   
import java.lang.annotation.Inherited;   
import java.lang.annotation.Retention;   
import java.lang.annotation.Target;   
import java.lang.annotation.ElementType;   
import java.lang.annotation.RetentionPolicy;   
  
/*  
 * 元注解@Target,@Retention,@Documented,@Inherited  
 *   
 *     @Target 表示该注解用于什么地方,可能的 ElemenetType 参数包括:  
 *         ElemenetType.CONSTRUCTOR 构造器声明  
 *         ElemenetType.FIELD 域声明(包括 enum 实例)  
 *         ElemenetType.LOCAL_VARIABLE 局部变量声明  
 *         ElemenetType.METHOD 方法声明  
 *         ElemenetType.PACKAGE 包声明  
 *         ElemenetType.PARAMETER 参数声明  
 *         ElemenetType.TYPE 类,接口(包括注解类型)或enum声明  
 *           
 *     @Retention 表示在什么级别保存该注解信息。可选的 RetentionPolicy 参数包括:  
 *         RetentionPolicy.SOURCE 注解将被编译器丢弃  
 *         RetentionPolicy.CLASS 注解在class文件中可用,但会被VM丢弃  
 *         RetentionPolicy.RUNTIME VM将在运行期也保留注释,因此可以通过反射机制读取注解的信息。  
 *           
 *     @Documented 将此注解包含在 javadoc 中  
 *       
 *     @Inherited 允许子类继承父类中的注解  
 *     
 */  
@Target(ElementType.FIELD)   
@Retention(RetentionPolicy.RUNTIME)   
@Documented  
@Inherited  
/*  
 * 定义注解 Test  
 * 注解中含有两个元素 value 和 length  
 */  
public @interface Test {   
    public String value() default "0";   
    public int length() default 0;   
}  

 

 

2、注解使用

import java.lang.reflect.Field;
  
public class Test_1 {   
    /*  
     * 被注解的三个方法  
     */  
    @Test(value = "methd1", length = 2)   
    public String method_1;   
  
    @Test(value = "method_22", length = 4)   
    public String method_2;   
  
    @Test(value = "method_33", length = 6)   
    public String method_3;   
  
    /*  
     * 解析注解,将Test_1类 所有被注解方法 的信息打印出来  
     */  
    public static void main(String[] args) {   
    	Field[] methods = Test_1.class.getDeclaredFields();   
        for (Field method : methods) {   
            /*  
             * 判断方法中是否有指定注解类型的注解  
             */  
            boolean hasAnnotation = method.isAnnotationPresent(Test.class);   
            if (hasAnnotation) {   
                /*  
                 * 根据注解类型返回方法的指定类型注解  
                 */  
                Test annotation = method.getAnnotation(Test.class);   
                System.out.println("Test( method = " + method.getName()   
                        + " , id = " + annotation.value() + " , description = "  
                        + annotation.length() + " )");   
            }   
        }   
        /*Method[] methods = Test_1.class.getDeclaredMethods();   
        for (Method method : methods) {   
              
             * 判断方法中是否有指定注解类型的注解  
               
            boolean hasAnnotation = method.isAnnotationPresent(Test.class);   
            if (hasAnnotation) {   
                  
                 * 根据注解类型返回方法的指定类型注解  
                   
                Test annotation = method.getAnnotation(Test.class);   
                System.out.println("Test( method = " + method.getName()   
                        + " , id = " + annotation.value() + " , description = "  
                        + annotation.length() + " )");   
            }   
        }*/   
    }   
  
}  

 

 

运行时,可以读取注解信息,通过反射来获取信息,达到目标。

 

分享到:
评论

相关推荐

    Java注解的使用例子

    Java注解(Annotation)是Java语言的一个重要特性,它为元数据提供了一种结构化的方式。元数据是在程序代码中包含的关于程序本身的信息,但这些信息并不直接影响程序的执行。注解允许开发者向编译器、JVM或工具提供...

    JAVA 注解示例 详解

    本篇文章将深入探讨Java注解的使用及其在实际开发中的应用。 首先,我们了解Java注解的基本结构。一个注解以`@`符号开头,后面跟着注解类型,如`@Override`或`@Deprecated`。注解可以带有参数,参数以键值对的形式...

    java代码规范示例

    Java 代码规范示例中,涵盖了 Java 项目中包、类、方法、注释等多个方面的规范。 首先,从文件头的注释部分可以看到,这个 Java 文件是一个 FTP 帮助类,负责实现 FTP 的上传和下载功能。这个类名为 FtpHelper,...

    java关于注解使用的例子

    通过学习这些例子,你可以深入理解Java注解的工作原理,如何创建和使用自定义注解,以及它们在实际项目中的应用。同时,你还可以了解注解与其他Java特性的交互,如反射和注解处理器,这将有助于提升你的Java编程技能...

    入门级java 注解学习示例代码

    以上就是关于Java注解的基本概念、使用和自定义方法。在实际开发中,注解广泛应用于Spring框架、ORM框架如Hibernate等,极大地简化了代码,提高了可维护性和可扩展性。学习和掌握注解是提升Java编程技能的重要一环。

    Java 使用注解拼接SQL语句

    "Java使用注解拼接SQL语句"是一个常见的实践,它使得动态构建SQL查询变得更为简洁和可维护。这种技术通常与ORM(对象关系映射)框架如MyBatis或Hibernate结合使用,但也可以通过自定义处理逻辑实现。 1. **自定义...

    spring4基于java注解事例

    在本教程中,我们将深入探讨如何使用Spring 4框架,特别是其基于Java注解的配置方式,来构建一个高效、可维护的系统。Spring 4是Java企业级应用开发的首选框架,它提供了广泛的功能,包括依赖注入、AOP(面向切面...

    Java注解实现方式

    Java注解是Java编程语言中的一个重要特性,它允许程序员在代码中嵌入元数据,这些元数据可以被编译器或运行时环境用来执行各种任务,例如代码...了解和熟练掌握Java注解的使用,对于提升Java编程的效率和质量至关重要。

    Eclipse Java注释模板.txt

    ### Eclipse Java注释模板知识点详解 #### 一、概述 在进行Java开发的过程中,良好的代码注释习惯不仅能帮助自己快速回顾代码逻辑,还能方便其他开发者理解代码意图,从而提高整个团队的工作效率。Eclipse作为一款...

    java 自定义注解例子

    本教程将通过一个超市自动售卖机的例子来详细讲解如何在Java中实现自定义注解。 首先,我们需要了解注解的基本结构。在Java中,注解以`@`符号开头,后面跟着注解的名称。自定义注解的定义类似于接口,但使用`@...

    关于java注解的使用

    关于Java注解的使用及其深度解析 Java注解(Annotation)是Java 5引入的一种元数据(metadata)机制,用于向代码中添加附加信息,这些信息可以被编译器或者运行时环境利用,进行代码分析、生成文档或者实现某些框架功能...

    java 注解开发(包含详细注释,项目可以直接运行)

    Java注解是自JDK1.5版本...通过学习和运行这些示例,你可以更深入地理解Java注解的使用方式和它们在实际项目中的应用。对于初学者,这是一个很好的实践资源,对于有经验的开发者,这些示例也可以作为快速参考和回顾。

    Java自定义注解实例

    ### 一、Java注解概述 1. **定义**: 注解是一种声明式的编程元素,以`@`符号开头,后面跟着注解的名称。它们可以应用于类、接口、方法、变量等不同级别。 2. **预定义注解**: Java标准库提供了若干预定义注解,如`...

    Java中给自己写的方法增加注释

    5. **使用示例**:如有必要,可以提供一个或多个使用方法的例子,帮助读者更好地理解如何调用。 6. **注意事项**:如果方法有特殊限制或使用建议,应当指出,如"确保参数非空"。 下面是一个完整的示例: ```java /...

    java 通过反射获取类上注解,方法上注解,注解里的值及方法参数

    在Java编程中,注解...这个示例涵盖了Java中使用反射获取注解的基本操作,包括类、方法、注解的值和方法参数。通过实践这个例子,你可以更好地理解和掌握这些概念,从而在实际项目中更有效地利用注解和反射。

    java通用注解API

    本文将深入探讨Java注解的API及其使用。 1. **注解的基本概念** - 注解(Annotation)是Java SE 5.0引入的新特性,它是一种用于向编译器或JVM提供元数据的方式。 - 注解通过`@`符号后跟注解类型的名称来应用,如`...

    注解javademo演示

    Java注解在现代Java开发中扮演着不可或缺的角色,尤其是在框架如Spring、Hibernate等中广泛使用。 注解的语法结构通常以`@`符号开始,后跟注解的名称。例如,`@Override`表示方法是重写父类的方法,`@Deprecated`...

    关于java注解比较详细的例子

    Java注解(Annotation)是Java语言的一个重要特性,它为代码提供了一种元数据,用于在编译时或运行时进行处理。注解不会直接影响程序的执行,但可以通过注解处理器来实现特定的功能,例如代码生成、验证、性能监控等...

    java注解jar包

    Java注解是Java编程语言中的一个重要特性,它允许在代码中添加元数据,这些元数据可以被编译器或运行时环境用来执行特定的操作。Java注解在软件开发中起着关键作用,它们简化了代码,提高了可维护性和可读性,同时也...

Global site tag (gtag.js) - Google Analytics