五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

設(shè)計(jì)模式:代理模式

2021-04-18 18:16 作者:做架構(gòu)師不做框架師  | 我要投稿

什么是代理模式?

代理模式(英文:Proxy Pattern),為某對(duì)象提供一種代理以控制對(duì)該對(duì)象的訪(fǎng)問(wèn)。即客戶(hù)端通過(guò)代理間接地訪(fǎng)問(wèn)該對(duì)象,從而限制、增強(qiáng)或修改該對(duì)象的一些特性。

一句話(huà)歸納

找人辦事,增強(qiáng)職責(zé)。

代碼示例

現(xiàn)在有一個(gè)抽象類(lèi)定義了要做什么,有一個(gè)真正的實(shí)現(xiàn)類(lèi),我通過(guò)新創(chuàng)建一個(gè)代理類(lèi)在該類(lèi)的方法執(zhí)行時(shí)對(duì)其進(jìn)行了加工處理,而不去改變?cè)械臉I(yè)務(wù)代碼(比如:加日志、事務(wù)等等)。

適用性

以下場(chǎng)景我建議你考慮使用:

  • 代理模式的使用場(chǎng)景非常多,Spring AOP,這是一個(gè)非常典型的動(dòng)態(tài)代理;

  • 業(yè)務(wù)代碼和非業(yè)務(wù)代碼進(jìn)行分離(比如事務(wù)、日志);

  • 想在訪(fǎng)問(wèn)一個(gè)類(lèi)時(shí)做一些控制的時(shí)候。

局限性

以下場(chǎng)景我建議你謹(jǐn)慎使用:

  • 由于在調(diào)用真實(shí)類(lèi)時(shí)中間加了一層代理,性能會(huì)慢一些。

  • 有些代理模式設(shè)計(jì)得非常的復(fù)雜,需要額外的工作。

靜態(tài)代理和動(dòng)態(tài)代理

根據(jù)代理的創(chuàng)建時(shí)期,代理模式分為靜態(tài)代理和動(dòng)態(tài)代理。

  • 靜態(tài):由程序員創(chuàng)建代理類(lèi)或特定工具自動(dòng)生成源代碼再對(duì)其編譯,在程序運(yùn)行前代理類(lèi)的 .class 文件就已經(jīng)存在了。

  • 動(dòng)態(tài):在程序運(yùn)行時(shí),運(yùn)用反射機(jī)制動(dòng)態(tài)創(chuàng)建而成

寫(xiě)在最后

最后,好兄弟,記得點(diǎn)贊,關(guān)注,謝謝。


設(shè)計(jì)模式:代理模式的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
衡阳市| 定边县| 五家渠市| 和平县| 丹巴县| 伊川县| 庆云县| 承德市| 乌鲁木齐县| 安远县| 福安市| 宁波市| 平陆县| 尉犁县| 布拖县| 合山市| 开封县| 涿州市| 隆子县| 竹山县| 寿阳县| 麻栗坡县| 徐闻县| 徐汇区| 南投县| 新化县| 新巴尔虎右旗| 临西县| 鄂伦春自治旗| 湘潭市| 沙坪坝区| 龙江县| 江津市| 康定县| 日喀则市| 彰化县| 莎车县| 黄梅县| 腾冲县| 稷山县| 桓台县|