读书人

简略反射调用方法

发布时间: 2013-10-24 18:27:21 作者: rapoo

简单反射调用方法

import java.lang.reflect.Method;public class DynamicLoading { public static void main(String[] args) throws Exception { String s = "A"; //加载类文件 Class c = Class.forName(s); //创建对象 Object obj = c.newInstance(); //获得方法数组 Method[] methods = c.getMethods(); for(Method m:methods){ if(m.getName().equals("mm")){Class[] sarrary = new Class[]{int.class,String.class};//获得方法Method m2 = c.getDeclaredMethod("mm",sarrary); //调用方法m2.invoke(obj,1,"lkjlkj");m.invoke(obj,1,"lkjlkj");//获得参数类型for(Class paraType:m.getParameterTypes()){System.out.println(paraType.getName()+"----------para");}//获得返回值类型Class  returnType = m.getReturnType();System.out.println(returnType.getName()+"------------returnType"); } }  Method TT = c.getDeclaredMethod("TT");  TT.invoke(obj);}}class A {public void mm(int i,String s){System.out.println("------mm invoked-----"+i+"===="+"======"+s);}public void TT(){System.out.println("-----TT invoked");}}

读书人网 >互联网

热点推荐