自定义注解
package cn.lichaozhang.annotationreflect;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target({ElementType.TYPE,ElementType.METHOD})
@Retention(value=RetentionPolicy.RUNTIME)
public @interface MyAnnotation {
public String key() default "LCZ";
public String value() default "张历超";
}
应用注解
package cn.lichaozhang.annotationreflect;
public class SimpleBean {
@MyAnnotation(key="lichaozhang",value="www.iteye.com")
public String toString(){
return "Hello Annotation!!!";
}
}
注解解析器
package cn.lichaozhang.annotationreflect;
import java.lang.reflect.Method;
public class MyDefaultAnnotationReflect {
@SuppressWarnings("unchecked")
public static void main(String[] args) throws Exception {
Class clazz = Class.forName("cn.lichaozhang.annotationreflect.SimpleBean");
Method method = clazz.getDeclaredMethod("toString", null);
if (method.isAnnotationPresent(MyAnnotation.class)) {
MyAnnotation myAnnotation = method.getAnnotation(MyAnnotation.class);
String key = myAnnotation.key();
String value = myAnnotation.value();
System.out.println(key + "\t" + value);
}
}
}
分享到:
相关推荐
本篇将基于Sun公司的官方文档《Java™ Core Reflection API and Specification》(1997年1月版)进行深度解析,帮助读者更好地理解反射的工作原理及其应用。 #### 二、Java反射的应用场景 Java反射广泛应用于框架...
Java注解以`@`符号开头,后面跟着注解类型。例如,`@Override`表示方法重写,`@Deprecated`标记不再推荐使用的功能。注解可以应用于类、接口、字段、方法以及构造器等。编译器或工具可以通过解析注解来执行特定的...
在配置文件或注解中声明bean及其依赖,Spring会使用反射创建对象并设置其属性。 - **AOP(面向切面编程)**: Spring AOP通过代理模式实现,反射用于在运行时动态创建代理对象,实现切面逻辑。 8. **注意事项** - ...
在“java 反射ppt 和 code 示例”中,我们可以深入理解这个强大的工具及其在实际开发中的应用。 首先,PPT部分可能会涵盖以下知识点: 1. **反射基本概念**:解释什么是反射,它的作用以及为什么我们需要它。反射...
本篇文章将深入探讨Java注解的使用及其在实际开发中的应用。 首先,我们了解Java注解的基本结构。一个注解以`@`符号开头,后面跟着注解类型,如`@Override`或`@Deprecated`。注解可以带有参数,参数以键值对的形式...
这个“Java反射demo”可能包含了以上部分或全部的示例,通过运行这些代码,开发者可以更深入地理解Java反射的工作原理及其在实际编程中的应用。学习并熟练掌握反射,能够极大地提升Java编程的灵活性和可扩展性。
5. **注解处理**: 反射机制还可以用来读取类、方法或字段上的注解,这对于实现元数据驱动的设计非常有用。 **Java泛型** Java泛型是自Java 5引入的一种类型安全机制,它允许在编译时检查类型,从而避免了类型转换...
本文将深入剖析Java反射的概念及其在实际开发中的应用。 首先,我们需要了解,反射的核心在于`java.lang.Class`类。每个类在Java中都有一个与之对应的`Class`对象,它包含了类的所有元数据信息。例如,在案例1中,...
本文将深入探讨Java注解的API及其使用。 1. **注解的基本概念** - 注解(Annotation)是Java SE 5.0引入的新特性,它是一种用于向编译器或JVM提供元数据的方式。 - 注解通过`@`符号后跟注解类型的名称来应用,如`...
同时,Spring还提供了基于XML、Java配置以及基于注解的配置方式,来定义对象及其依赖关系。 关于Java反射的实例,我们可以创建一个简单的例子。假设我们有一个接口`Service`和两个实现类`ServiceImpl1`、`...
Java中的注解(Annotation)和反射(Reflection)是两种强大的工具,它们提供了程序设计的灵活性和动态性。本文将深入探讨这两个概念及其相关知识点。 **注解** 是一种元数据,它提供了在代码中附加信息的方式,...
### Java反射机制与NoSuchMethodException详解 在Java编程中,反射是一种强大的机制,允许程序在运行时检查和修改自身结构和行为。然而,当开发者尝试使用反射调用一个不存在的方法时,便会遇到`java.lang....
Java反射是Java编程语言中的一个强大特性,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在Java中,反射机制的核心类是`java.lang.Class`,它代表了类的信息。通过反射,我们可以动态地...
Java反射机制还涉及到注解处理,可以使用`Annotation`接口及其子类来获取和处理类、方法、字段上的注解信息。这对于实现元编程、AOP(面向切面编程)和自定义注解处理器非常有用。 总的来说,Java反射机制为程序员...
Java反射和Spring IOC是Java开发中的两个重要概念,它们在构建灵活、可扩展的应用程序时起着关键作用。本文将深入探讨这两个主题,并提供相关的学习资源。 首先,让我们了解一下Java反射。Java反射机制是Java语言的...
下面我们将详细探讨Java反射的基本方法及其应用。 一、获取类信息 1. `Class` 类:反射的核心是`Class`类,它代表一个Java类。通过`Class`对象,我们可以获取到类的元数据。获取`Class`对象的方法有: - 使用`...
Java反射是Java编程语言中的一个强大工具,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在本话题中,我们将深入探讨基于Java反射的验证框架,了解其工作原理、应用场景以及如何利用它来...
下面将详细介绍Java反射技术及其应用场景。 一、Java反射概述 反射技术是Java平台特有的功能,它基于Java的动态性,使得程序能够在运行时获取类的信息,并根据这些信息动态地调用方法和访问成员变量。这对于实现元...