为什么InvocationHandler中的invoke()方法有一个参数Object Proxy?

Eri*_*hen 5 java proxy dynamic invoke

当您检查方法调用(对象代理,方法方法,对象[] args)声明和doc语句时,您会发现输入参数代理

proxy-在其上调用方法的代理实例

当我在Java动态代理上进行测试时,我发现此代理是由vm生成的。所以我确实想知道为什么方法调用具有此参数,除了只有一个对象($ proxy0)之外,肯定没有其他东西,但是不要没有为我们的使用采取实际行动吗?

Ale*_*lex 5

如果您有多个代理对象的单个调用句柄,这非常有用。所以你可以使用哈希映射来存储代理状态信息。例如 - Mokito 测试框架存储代理调用历史。