java反射,获取类对象所有成员变量,从字符串调用函数

//import java.lang.reflect.Field;/** 获取Object对象,所有成员变量属性值 */public static void getObjAttr(Object obj){// 获取对象obj的所有属性域Field[] fields = obj.getClass().getDeclaredFields();for (Field field : fields){// 对于每个属性,,获取属性名String varName = field.getName();try{boolean access = field.isAccessible();if(!access) field.setAccessible(true);//从obj中获取field变量Object o = field.get(obj);System.out.println("变量: " + varName + " = " + o);if(!access) field.setAccessible(false);}catch (Exception ex){ex.printStackTrace();}}}

//import java.lang.reflect.Field;//import java.lang.reflect.Method;/**从字符串调用函数,Main.pointEvent(int arg) * className = "com.linkstudio.popstar.state.Main" */public static void _poinrEvent(String className, int arg){try{Class classT = Class.forName(className);//获取对应类Method methodT = classT.getMethod("pointEvent", int.class); //获取classT中的pointEvent(int arg)函数Object obj = classT.newInstance(); //创建类对象methodT.invoke(obj, (Object)arg);//调用对象obj的pointEvent方法}catch(Exception ex){ System.out.println("调用类对象中的函数异常!");}}

生活会变成什么样子?正因为时光流逝一去不复返,

java反射,获取类对象所有成员变量,从字符串调用函数

相关文章:

你感兴趣的文章:

标签云: