@Override
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
long starttime = System.currentTimeMillis();
System.out.println("汽车开始行驶....");
method.invoke(target);
long endtime = System.currentTimeMillis();
System.out.println("汽车结束行驶.... 汽车行驶时间:"
+ (endtime - starttime) + "毫秒!");
return null;
}
上面代码中加粗部分,我的疑问是:
method是被代理类中的方法,那么method.invoke()是什么意思,为什么传入的被代理类?
method.invoke(target)=====target.method
Method 是反射里面的知识 类似于 类.class 执行了target的方法