代理模式可以实现在执行目标条件时,对要执行的目标对象和在要执行 目标对象的方法前要执行党的代码的解耦,从而避免了代码的臃肿,但一般的代理导致了目标方法被写死,不利于扩展,所以有了动态代理,动态代理耦合性低,扩展度高,在jdk中implements InvocationHandler即可表示一个拦截器类,其中复写的方法invoke(Object proxy, Method method, Object[] args),method.invoke(this.target, args);表示执行目标方法,args表示目标对象方法的参数。Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(), interceptor);表示目标类,利用动态代理模式生成的,只要强转成对应的类或其父类或接口,即可调用该目标对象中的方法。
代理模式
最新推荐文章于 2023-01-02 20:26:38 发布