最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

學(xué)習(xí)筆記4:JDK代理類簡單實現(xiàn)學(xué)習(xí)

2023-04-11 17:27 作者:帽子太卡呢  | 我要投稿


DK代理是Java原生的對接口進(jìn)行強(qiáng)化的方法,可以對代碼進(jìn)行切面修改,從而在特定接口函數(shù)調(diào)用前和調(diào)用后進(jìn)行一些額外操作。這個方法相對于cglib來說不是那么通用,只能對接口進(jìn)行處理。下面簡單介紹一下進(jìn)行JDK代理類的流程

?

首先創(chuàng)建一個接口,以及其一個實現(xiàn),如下所示:

?

?

之后實現(xiàn)代理接口,如下所示:

?

?

之后,在主函數(shù)里生成一個實現(xiàn)類,以及代理類,并對接口進(jìn)行調(diào)用:

?

?

?

命令行輸出結(jié)果:

Test12:func
Test12InvocationHandler:invoke

?

可以看到,生成的接口代理類會通過InnovacationHandler接口的invoke方法來調(diào)用指定接口代碼,此處額外進(jìn)行的println操作也被觸發(fā)。

?

一些總結(jié):

JDK代理本質(zhì)是通過切面的形式對接口進(jìn)行裝飾者模式的修飾,在調(diào)用被代理的對象的前后可以進(jìn)行一定處理,根據(jù)情況也可以選擇跳過操作,或者使一個接口函數(shù)的調(diào)用完全改成另外的方法執(zhí)行。如果進(jìn)行迭代裝飾,則會按照裝飾的順序從新到舊進(jìn)行遞歸調(diào)用。

同時因為JDK代理是對一個對象進(jìn)行了裝飾,因此這個裝飾過程也是需要手動進(jìn)行的,例如通過工廠模式在創(chuàng)建進(jìn)行包裝等。

我現(xiàn)在還沒有實際需要用到JDK代理的應(yīng)用場景,如果有必要在工作中應(yīng)用的話可能在測試后能有更多理解吧。


學(xué)習(xí)筆記4:JDK代理類簡單實現(xiàn)學(xué)習(xí)的評論 (共 條)

分享到微博請遵守國家法律
临洮县| 康马县| 玉山县| 仪征市| 云安县| 剑阁县| 剑川县| 金川县| 玉林市| 衡阳县| 四会市| 台前县| 启东市| 墨玉县| 雅江县| 宣恩县| 新沂市| 科尔| 翁源县| 东至县| 张北县| 祁门县| 丰台区| 苍溪县| 库车县| 永丰县| 内丘县| 丹巴县| 定边县| 招远市| 岢岚县| 重庆市| 东城区| 杭锦旗| 沅陵县| 灵寿县| 娄底市| 区。| 霍林郭勒市| 东辽县| 炎陵县|