File tree Expand file tree Collapse file tree 1 file changed +5
-5
lines changed
Expand file tree Collapse file tree 1 file changed +5
-5
lines changed Original file line number Diff line number Diff line change @@ -120,15 +120,15 @@ after method send()
120120
121121** 从 JVM 角度来说,动态代理是在运行时动态生成类字节码,并加载到 JVM 中的。**
122122
123- 说到动态代理,Spring AOP、RPC 框架应该是两个不得不的提的 ,它们的实现都依赖了动态代理。
123+ 说到动态代理,Spring AOP、RPC 框架应该是两个不得不提的 ,它们的实现都依赖了动态代理。
124124
125- ** 动态代理在我们日常开发中使用的相对较小 ,但是在框架中的几乎是必用的一门技术。学会了动态代理之后,对于我们理解和学习各种框架的原理也非常有帮助。**
125+ ** 动态代理在我们日常开发中使用的相对较少 ,但是在框架中的几乎是必用的一门技术。学会了动态代理之后,对于我们理解和学习各种框架的原理也非常有帮助。**
126126
127127就 Java 来说,动态代理的实现方式有很多种,比如 ** JDK 动态代理** 、** CGLIB 动态代理** 等等。
128128
129129[ guide-rpc-framework] ( https://github.com/Snailclimb/guide-rpc-framework ) 使用的是 JDK 动态代理,我们先来看看 JDK 动态代理的使用。
130130
131- 另外,虽然 [ guide-rpc-framework] ( https://github.com/Snailclimb/guide-rpc-framework ) 没有用到 ** CGLIB 动态代理 ,我们这里还是简单介绍一下其使用以及和** JDK 动态代理的对比 。
131+ 另外,虽然 [ guide-rpc-framework] ( https://github.com/Snailclimb/guide-rpc-framework ) 没有用到 ** CGLIB 动态代理** ,我们这里还是简单介绍一下其使用以及和** JDK 动态代理 ** 的对比 。
132132
133133### 3.1. JDK 动态代理机制
134134
@@ -154,7 +154,7 @@ after method send()
1541542 . ** interfaces** : 被代理类实现的一些接口;
1551553 . ** h** : 实现了 ` InvocationHandler ` 接口的对象;
156156
157- 要实现动态代理的话,还必须需要实现` InvocationHandler ` 来自定义处理逻辑。 当我们的动态代理对象调用一个方法时候 ,这个方法的调用就会被转发到实现` InvocationHandler ` 接口类的 ` invoke ` 方法来调用。
157+ 要实现动态代理的话,还必须需要实现` InvocationHandler ` 来自定义处理逻辑。 当我们的动态代理对象调用一个方法时 ,这个方法的调用就会被转发到实现` InvocationHandler ` 接口类的 ` invoke ` 方法来调用。
158158
159159``` java
160160public interface InvocationHandler {
@@ -298,7 +298,7 @@ extends Callback{
2982981 . ** obj** :被代理的对象(需要增强的对象)
2992992 . ** method** :被拦截的方法(需要增强的方法)
3003003 . ** args** :方法入参
301- 4 . ** methodProxy ** :用于调用原始方法
301+ 4 . ** proxy ** :用于调用原始方法
302302
303303你可以通过 ` Enhancer ` 类来动态获取被代理类,当代理类调用方法的时候,实际调用的是 ` MethodInterceptor ` 中的 ` intercept ` 方法。
304304
You can’t perform that action at this time.
0 commit comments