Java动态代理

171 阅读1分钟

InvocationHandler接口

  • 每个代理实例都有一个InvocationHandler
  • InvocationHandler决定了如何处理发给代理实例的消息
  • 当方法在代理实例上被调用,该方法被包装转发到它的InvocationHandler上

InvocationHandler唯一方法invoke。

Object invoke(Object proxy, Method method, Object[] args) throws Throwable

  • proxy:  指代我们所代理的那个真实对象
  • method:  指代的是我们所要调用真实对象的某个方法的Method对象
  • args:  指代的是调用真实对象某个方法时接受的参数