反射相关


转载请注明出处,亲
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);


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

posted on 2012-12-10 09:02  F.C.CHELSEA 黑米  阅读(145)  评论(0编辑  收藏  举报