为别人做嫁衣——代理模式
生活随笔
收集整理的這篇文章主要介紹了
为别人做嫁衣——代理模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代理模式(Proxy):為其他對象提供一種代理以控制對這個對象的訪問。
代理模式(Proxy)結構圖
Subject類,定義了RealSuject和Proxy的共用的接口,這樣就在任何使用RealSubject的地方都可以使用Proxy。
abstract class subject {public abstract void Request(); }RealSubject類,定義Proxy所代表的真實實體。
class RealSubject extends Subject{public void Request(){//真實的請求 } }Proxy類,保存一個引用使得代理可以訪問實體,并提供一個與Subject的接口相同的接口,這樣代理就可以用來代替實體。
class Proxy extends Subject{RealSubject realSubject;public void Request(){if(realSubject == null){realSubject = new RealSubject();}realSubject.Request();} }客戶端代碼
static void Main(String[] args){Proxy proxy = new Proxy();proxy.Request(); }代理模式應用:
第一種:遠程代理,也就是為一個對象在不同的地址空間提供局部代表。這樣可以隱藏一個對象存在于不同地址空間的事實;
第二種:虛擬代理,是根據需要創建開銷很大的對象。通過它來存放實例化需要很長時間的真是對象;
第三種:安全代理,用來控制真實對象訪問時的權限;
第四種:智能指引,是指當調用真實的對象時,代理處理另外一些事。
?
轉載于:https://www.cnblogs.com/chuji1988/p/4260365.html
總結
以上是生活随笔為你收集整理的为别人做嫁衣——代理模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Flexbox兼容性语法汇总
- 下一篇: 为mongodb加上权限