使用反射,调用有参数的方法
1.创建Person类,写几个方法
package seday18c; /** * @author xingsir * 创建一个Person类,写几个方法 */ public class Person { public void eat() { System.out.println("我在吃"); } public void run() { System.out.println("我在跑"); } public void eat(String name) { System.out.println("我是"+name+",我在吃"); } public void eat(String name,int count) { System.out.println("我是"+name+",我在吃"+count+"只牛蛙"); } }
2.创建调用有参数的方法
package seday18c; import java.lang.reflect.Method; /** * @author xingsir * 使用反射,调用有参数的方法 */ public class ReflectDemo4 { public static void main(String[] args) throws Exception { Class cls= Class.forName("seday18c.Person"); //实例化 Object o =cls.newInstance(); //获取方法 Method m= cls.getMethod("eat", String.class); m.invoke(o, "八戒"); Method m2 = cls.getMethod( "eat",String.class,int.class); m2.invoke(o, "八戒",1); } }