/**
* java反射bean的get方法
*
* @param objectClass
* @param fieldName
* @return
*/
@SuppressWarnings("unchecked")
public static Method getGetMethod(Class objectClass, String fieldName) {
StringBuffer sb = new StringBuffer();
sb.append("get");
sb.append(fieldName.substring(0, 1).toUpperCase());
sb.append(fieldName.substring(1));
try {
return objectClass.getMethod(sb.toString());
} catch (Exception e) {
}
return null;
}
/**
* java反射bean的set方法
*
* @param objectClass
* @param fieldName
* @return
*/
@SuppressWarnings("unchecked")
public static Method getSetMethod(Class objectClass, String fieldName) {
try {
Class[] parameterTypes = new Class[1];
Field field = objectClass.getDeclaredField(fieldName);
parameterTypes[0] = field.getType();
StringBuffer sb = new StringBuffer();
sb.append("set");
sb.append(fieldName.substring(0, 1).toUpperCase());
sb.append(fieldName.substring(1));
Method method = objectClass.getMethod(sb.toString(), parameterTypes);
return method;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
* 执行set方法
*
* @param o执行对象
* @param fieldName属性
* @param value值
*/
public static void invokeSet(Object o, String fieldName, Object value) {
Method method = getSetMethod(o.getClass(), fieldName);
try {
method.invoke(o, new Object[] { value });
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 执行get方法
*
* @param o执行对象
* @param fieldName属性
*/
public static Object invokeGet(Object o, String fieldName) {
Method method = getGetMethod(o.getClass(), fieldName);
try {
return method.invoke(o, new Object[0]);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
分享到:
相关推荐
Java 反射创建get set方法及反射方法的调用
主要为大家详细介绍了Java通过PropertyDescriptor反射调用set和get方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
下面的例子,是Insus练习对一个类别的属性进行set和get值。 首先写一个类,再写一个可读写的属性: 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <...
java反射编写的 set 和 get 方法
编写Student类,类中包含学生姓名,学号等私有数据成员。 使用JAVA反射机制修改一个学生对象的私有数据成员(不允许调用setters)
反射入门小程序.通过反射机制执行JavaBean的get和set方法.
Java使用反射机制使用get set 方法 import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Method; /** * */ /** * @ClassName: ReflectTest * @Description: ...
object objType = DataCache.GetCache(ClassNamespace);//从缓存读取 if (objType == null) { try { objType = Assembly.Load(AssemblyPath).CreateInstance(ClassNamespace);//反射创建 DataCache.Set...
易语言类的反射调用源码,类的反射调用,取指针,取当前方法索引,注册方法,set,get,msgbox,test,调用子程序_数组,CopyMemory,取指针_通用型,取指针_通用型_数组,指针到字节,指针到整数,指针到短整数,调用反射函数
Java 反射机制可以让我们在编译期(Compile Time)之外的运行期(Runtime)检查类,接口,变量以及方法的信 息。反射还可以让我们在运行期实例化对象,调用方法,通过调用 get/set 方法获取变量的值。
要想对一个类型实例的属性或字段进行动态赋值或取值,首先得得到这个实例或类型的Type,微软已经为我们提供了足够多的方法。 首先建立一个测试的类 代码如下: public class MyClass { public int one { set; get; } ...
这样你就可以使用 Constructor 创建新的对象,用 get() 和 set() 方法读取和修改与 Field 对象关联的字段,用invoke() 方法调用与 Method 对象关联的方法。 另外,还可以调用 getFields() getMethods
Java Ioc例子,基于反射,PS:lfioc能够自动识别set、get方法,比如set字段a时,a、A、setA三种写法在lfioc中都是允许的。以字符串方式获得Bean实例,为Bean中setA注入数据,为setB注入数据,获得IBean接口。
反射机制用Java描述下载资料 import java.lang.reflect.Array; public class ArrayTest { public static void main(String[] args){ try{ //创建一个元素类型为String,长度为10的数组 Object arr=Array....
Constructor constructor = clazz.getConstructor(Class 参数字节码)根据参数类型获取public修饰的指定的的构造方法 Constructor constructor = clazz.getDeclearConstructor(Class 参数字节码) 获取任意...
Json 对象创建器使用反射从 Json 字符串创建目标 C 对象用法@interface UserObject : NSObject@property (strong, nonatomic) NSString* text;@property (strong, nonatomic) NSString* username;@property (strong,...
本文实例讲述了go语言通过反射获取和设置结构体字段值的方法。分享给大家供大家参考。具体实现方法如下: 代码如下:type MyStruct struct { N int } n := MyStruct{ 1 } // get immutable := reflect.ValueOf(n) ...
简单实现如何不创建简单JavaBean对象,而仅仅利用反射实现向普通JavaBean中set值和get值
反射回去到一个类,类名,类的所有属性...还记得刚开始学java的时候,对于java里的私有属性,想要操作它,得需要通过创建对象调用它set或get方法,才能操作这些私有属性。那么对于使用反射,我们同样也能操作这些私有属性。