TimeHandler类中invoke方法里method.invoke(target)怎么解释?

来源:2-3 了解 JDK 动态代理

杜牧之

2018-08-21 21:41


@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()是什么意思,为什么传入的被代理类?

写回答 关注

2回答

  • 倩与倩寻
    2018-08-30 12:41:37
    method.invoke(target)=====target.method


  • qq_我有一个方丈师兄_0
    2018-08-25 22:34:37

    Method 是反射里面的知识  类似于 类.class    执行了target的方法

模式的秘密---代理模式

本节课程将带你领略Java编程语言中代理模式的奥妙

54914 学习 · 98 问题

查看课程

相似问题