发布网友 发布时间:2022-04-25 06:52
共4个回答
热心网友 时间:2022-04-10 20:20
就是调用类中的方法,最简单的用法是可以把方法参数化,invoke(class, method)比如你Test类里有一系列名字相似的方法setValue1、setValue2等等。可以把方法名存进数组v[],然后循环里invoke(test,v[i]),就顺序调用了全部setValue
如:public class MyTest{ public static void main(String[] args) { String [] names ={"tom","tim","allen","alice"};
Class<?> clazz = Test.class; try Method method = clazz.getMethod("sayHi", String.class);for(String name:names)method.invoke(clazz.newInstance(),name);} catch (NoSuchMethodException e) e.printStackTrace(); } catch (IllegalAccessExcepti e.printStackTrace( } catch (IllegalArgumentException {e.printStackTrace();} catch (InvocationTargetException e)e.printStackTrace(); } catch (InstantiationException e {e.printStackTrace( }class Test{public void sayHi(String name){ System.out.println("Hi "+name); }
热心网友 时间:2022-04-10 21:38
private static void m9() throws Exception {
热心网友 时间:2022-04-10 23:13
invoke方法详解 及实现循环的源代码 ,相信信息请看这里 http://blog.csdn.net/java958199586/article/details/6951882热心网友 时间:2022-04-11 01:04
根据万物皆对象,所以类也是对象,通过反射得到描述类的对象,也就是Class这个类。有三种方法得到: