public static void addValueToList(List list, String[] str, Object pointer)throws Exception
{
Field field = null;
String type = null;
for (int i = 0; i < str.length; i++)
{
field = pointer.getClass().getDeclaredField(str[i]);
type = field.getType().getName();
String methodName = null;
StringBuffer buffer = new StringBuffer();
String substr1 = str[i].substring(0, 1);
String substr2 = str[i].substring(1, str[i].length());
buffer.append(substr1.toUpperCase(Locale.getDefault()));
buffer.append(substr2);
methodName = new String(buffer);
Method method = null;
try
{
method = pointer.getClass().getDeclaredMethod(methodName, null);
}
catch (NoSuchMethodException e)
{
e.toString();
}
if (type.compareToIgnoreCase("short") == 0)
{
short value = ((Short)method.invoke(pointer, null)).shortValue();
if (-1!= value)
{
list.add(value);
continue;
}
}
else if (type.compareToIgnoreCase("int") == 0)
{
int value = ((Integer)method.invoke(pointer, null)).intValue();
if (-1!= value)
{
list.add(value);
continue;
}
}
else if (type.indexOf("java.lang.String") >= 0)
{
String value = (String)method.invoke(pointer, null);
if (null != value)
{
list.add(value);
}
}
}
}
分享到:
相关推荐
这个"Java反射案例"可能包含了以上所述的一些或所有内容,通过实践和学习,你可以更好地理解并掌握Java反射机制,提高代码的灵活性和可扩展性。参考链接提供的文章详细讲解了相关API的使用,是一个不错的学习资源。
在本篇文章中,我们将探讨Java反射的基本概念、如何使用以及其在实际开发中的应用,结合“JAVA简单的反射案例”这一主题。 1. **什么是Java反射**: Java反射机制允许我们在运行时动态地获取类的信息(如类名、...
这个“反射案例-仅供查考”可能包含了一系列关于如何使用反射进行实际操作的例子。 1. **反射的基本概念** - 类的Class对象:每个类在Java中都有一个对应的Class对象,它包含了该类的所有信息,如类名、方法、属性...
这个".NET反射案例"压缩包显然包含了一个视频教程——"shangwu1-反射1.avi",它可能详细讲解了如何在实践中应用反射。 反射的核心概念在于它能够动态地获取类型信息,包括类、接口、枚举、委托等。通过System....
Java反射是Java编程语言中的一个强大特性,它允许运行时的程序访问并操作类、接口、字段和方法等信息,即使这些信息在编译时并未明确知晓。在Java中,反射通常通过`java.lang.Class`类和相关的API来实现。本实例将...
在C#编程语言中,反射是一项强大的特性,它允许运行时检查类型信息并动态操作对象。这个"c# 反射应用几乎最全面的实例"集合可能是为了展示反射的各种应用场景和用法。以下是对C#反射及其应用的详细解释。 反射的...
Java反射机制是Java语言的一个重要特性,它允许程序在运行时动态地获取类的信息并调用其方法。在Java中,反射机制的核心类是`java.lang.Class`,它代表了运行时的类信息。通过反射,我们可以实现一些高级功能,如...
6. **案例分析**: 假设有一个`Person`类,包含`getName()`和`setName(String name)`方法。我们可以不直接创建`Person`对象,而是使用反射动态调用这些方法。首先,获取`Person`的`Class`对象,然后通过`...
//c# 反射实例 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; namespace ConsoleApplication1 { class Program { static void Main( string...
"反射案例"这个文件可能包含了具体的代码示例,演示了如何在C#中使用反射。这些示例可能包括: 1. **获取类型信息**:展示如何获取类型的基本信息,如名称、全名、是否为抽象类等。 2. **动态实例化**:创建未知...
描述中的“简单反射案例”可能包含了上述部分或全部内容,演示了如何在运行时通过类名动态获取类信息,创建对象,访问和修改私有成员,以及调用方法。压缩包中的“test”文件可能是包含这个小例子的源代码文件,可以...
C#反射+委托案例 C#反射是指在运行时动态地获取类型信息和调用类型成员的能力。反射的定义是审查元数据并收集关于它的类型信息的能力。元数据是编译以后最基本的数据单元,它是一个大堆的表,当编译程序集或者模块...
在这个“dwr与反射相结合”的案例中,我们将深入探讨如何利用DWR的灵活性和Java反射机制来增强Web应用的功能。 DWR的核心功能是提供一种安全、高效的方式,使得JavaScript可以调用服务器上的Java方法,就像是本地...
结合这两个概念,"反射工厂"的案例可能是在创建对象时,使用工厂模式的逻辑,但在确定要创建哪个类的对象时,不预先硬编码类名,而是通过反射机制获取。例如,假设我们有一个数据库访问对象的接口DAO,有多个不同的...
通过这个案例,我们可以看到反射机制如何使代码更加通用,可以处理任意实现了相应getter方法的对象,而不仅仅是预先知道的特定类型。 3. 反射与JVM的自省机制: 反射机制是Java虚拟机(JVM)的自省能力体现,它...
再来看"望梅止渴"的例子,这是一个经典的复杂反射案例。吃梅止渴是基本的非条件反射,因为人们在吃到酸梅时会立刻分泌唾液,这是与生俱来的反应。而谈梅止渴、看梅止渴则涉及到更高级的认知过程,如记忆和联想,因此...
8. **缩手反射案例分析**:当手接触到高温物体时,感受器感受到刺激,通过传入神经将信息传至脊髓的神经中枢,再由传出神经引导效应器(肌肉)收缩,使手迅速缩回,这一过程就是典型的反射活动。 综上所述,本课件...
本文将深入讲解C#反射的基本概念、用途以及实际案例。 首先,我们要理解什么是类型。在C#中,每个类、接口、结构、枚举等都是一个类型,它们在编译期间被转换为元数据,存储在程序集(Assembly)中。反射就是通过...
光的反射教学案例.doc