工作需要用java反射,小小研究一下,挺不错,废话少说,直接上代码。
1.根据类的完整路径获取类:
public static Class<?> getClass(String className){
Class<?> c = null;
try {
c = Class.forName(className);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return c;
}
2.获取执行类的方法
/**
*
* @param cls
* @param methodName 方法名
* @param params 参数列表
* @return
*/
public static String getMethod(Class<?> cls,String methodName,Object...params){
Class<?> []o = null;
if(params != null){
int len = params.length;
o = new Class[len];
for(int i=0;i<len;i++){
o[i] = params[i].getClass();
}
try {
Method method = cls.getDeclaredMethod(methodName, o);
method.invoke(cls.newInstance(), params);
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
}
return "";
}
3.测试
public static void main(String[] args) {
Class<?> c = getClass("refelect.MyNewClass");
System.out.println(c);
try {
getMethod(c, "show", "msg");
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
- 大小: 8.1 KB
分享到:
相关推荐
通过Java反射机制,我们可以在运行时获取类的信息,包括类的成员变量、方法、构造方法等,并可以动态地调用这些成员变量和方法。 获取Class对象 ---------------- 在Java中,Class对象是反射机制的基础。我们可以...
Java反射机制,万物皆对象,class也是一个类的对象,通过类类型,反射获得类的成员属性,构造方法,成员方法,并调用类中的方法,也可以调用私有方法。
通过java类的路径实例化类并调用方法:仅仅知道类的路径,就可以实例化对象,利用反射机制调用其方法
使用JAVA反射机制动态调用 计算器对象的加法,减法函数。 使用JAVA反射机制修改一个学生对象 的私有数据成员(不允许调用setters) 使用的类有Class, Method, Field
代码为JAVA反射的一个DEMO,适合初学者临摹学习,还附有properties的创建方法,比较基础。
在 Java 语言内部,Java 反射机制可以用来动态地加载类、创建对象、调用方法、访问字段等。例如,下面是一个简单的示例程序: ```java public class TestUtils { public static void main(String[] args) throws ...
下面小编就为大家带来一篇利用java反射机制调用类的私有方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
java反射机制核心代码,小弟一直弄不明白,怎么通过反射来调用私有成员方法,看了这个后,你可以随心调用private方法,和属性,记得添加setAccessable(true),哦,要不还是不行,如:method.setAccessable(true);
java反射机制及动态代理的ppt java反射机制及动态代理的ppt
下面小编就为大家带来一篇利用java反射机制实现自动调用类的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Method,invoke,getMethod等反射私有方法和私有属性
Java 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为 Java 语言的反射机制。...
java反射调用set方法时如果...这段时间学习java的反射机制想实现一个功能:遍历一个Map,然后利用反射机制调用BO的set方法,完成BO属性的自动注入。这样设计的初衷是解决Excel数据导入问题中的Map数据填充BO这一过程。
JAVA反射机制-Class类-Class对象的获取.pdf
Java 反射机制是 Java 语言中的一种功能,允许程序在运行时访问和修改类、对象、方法、变量等的信息。这种机制提供了许多强大的功能,例如在运行时判断对象所属的类、构造对象、判断类的成员变量和方法、调用对象的...
都能够调用它的任意一个方法,常见的应用如下 逆向代码 ,例如反编译 与注解相结合的框架 例如Retrofit 单纯的反射机制应用框架 例如EventBus 2.x 动态生成类框架 例如Gson Java高级程序设计实战教程第三章-Java反射...
反射机制可以让我们在运行期动态地调用方法,并传递参数和返回值。 3.6 创建类的对象(实例化对象) 反射机制可以让我们在运行期动态地创建类的对象,并使用这些对象来执行不同的操作。 四、反射机制的优缺点 ...
适用于有一定Java编程基础的开发人员,希望了解和应用Java反射机制的使用者。 使用场景及目标 使用反射机制的典型场景包括以下几个方面: 在运行时动态加载和创建类对象。 通过反射调用对象的方法和访问对象的字段...
Java 反射机制主要提供 了以下功能: 在运行时判断任意一个对象所属的类; 在运行时构造任意一个类的对象; 在运行时判断任意一个类所具有的成员变量和方法; 在运行时调用任意一个对象的方法; 生成动态...