反射相关


转载请注明出处,亲
class hello { public static void main(String[] args) { Class<?> demo = null; try { demo = Class.forName("Reflect.Person"); } catch (Exception e) { e.printStackTrace(); } try{ //调用Person类中的frank方法 Method method=demo.getMethod("frank"); method.invoke(demo.newInstance()); //调用Person的sayHello方法 method=demo.getMethod("sayHello", String.class,int.class); method.invoke(demo.newInstance(),"Rollen",20); }catch (Exception e) { e.printStackTrace(); } } }

            method.invoke(demo.newInstance());这个就是实例化类,不然找不到内部的方法
            method=demo.getMethod("sayHello", String.class,int.class);


这个很关键,就是找类里面的方法,参数一定要对,因为方法可能是多态的。所以参数类型一定不能错.

转载于:https://www.cnblogs.com/heimi/archive/2012/12/10/2810756.html

上一篇:java调用第三方接口(转载)


下一篇:C#通过函数名字符串执行相应的函数