【BigData】Java基础_反射(操作对象、方法)
在【BigData】Java基础_反射中只是对对象实现了反射,但是在我们实际的编程中,一个类中可能会存在很多个方法,那么当我们的方法没写好的时候,我们调用的时候就会受到牵制,所以与类一致,方法上也可以使用反射,这样就可以一劳永逸。
代码实现
package cn.test.logan.day10.reflect; import java.lang.reflect.Method; public class TestPerson { public static void main(String[] args) throws Exception { /** * 以下参数可以写在文件中,从文件中动态读取,此处为了简便,就从Eclipse工具输入 */ String className = args[0]; //要实例化的类名 String methodName = args[1]; //要调用的方法名 Class<?> pclass = Class.forName(args[2]);// 方法的参数类型 String foodName = args[3]; // 调方法时,传入的参数值 Class<?> forName = Class.forName(className); Person p =(Person)forName.newInstance(); //从forName这个模板中获取方法 Method method = forName.getMethod(methodName,pclass); // 将method在对象是执行 Object invoke = method.invoke(p, foodName); System.out.println(invoke); } }
说明:执行以上方法需要使用Run as -->>Run configurations
执行结果为:
作者:奔跑的金鱼
声明:书写博客不易,转载请注明出处,请支持原创,侵权将追究法律责任
个性签名:人的一切的痛苦,本质上都是对自己无能的愤怒
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!