利用反射,进行对象方法的调取
package com.Reflect;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
//用反射,进行对象方法的调取
public class TestDemo {
public static void main(String[] args) throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException {
//获取字节码信息:
Class name = Class.forName("com.Reflect.PayAliy");
//获取方法PayOnline
Method method = name.getMethod("PayOnline");
//获取字节码对象01
Object o1 = name.newInstance();
//调用o1对象的PayOnline方法
method.invoke(o1);
}
}
package com.Reflect;
public class PayAliy implements Meituan {
@Override
public void PayOnline() {
System.out.println("我订了餐,用支付宝付款");
}
}
package com.Reflect;
//定义一个接口
public interface Meituan {
//这里的方法就是用来重写的
void PayOnline();
}