java getMethod与invoke

这样写(假设方法的参数是String[],如main(String[] args)): 
Class yourClass = Class.forName("YourClass");//假设你要动态加载的类为YourClass 

Class[] parameterTypes = new Class[1];//这里你要调用的方法只有一个参数 

parameterTypes[0] = String[].class;//这个参数的类型是String型的/应该是String[] 

Method method = yourClass.getMethod("main", parameterTypes);//这里假设你的类为YourClass,而要调用的方法是main 

Object[] args = new Object[1];//假设你要传入两个参数应该是一个 
String[] argments = new String[2];//假设你要传入两个参数 
argments[0] = "OK"; 
argments[1] = "NO"; 
args[0] = argments; 

method.invoke(yourClass.newInstance(), args);//调用方法

 

=====================================================

 

Employee是一个类,getName和raiseSalary是该类中的方法,现在通过Class类的getMethod方法获得获得这两个方法的方法指针,调用如下

Method m1=Employee.class.getMethod("getName");
Method m2=Employee.class.getMethod("raiseSalary",double.class);
这里的class是一个字段,表示这个类对应的Class类的对象,再调用其中的getMethod()返回的是类中公共的成员方法,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值