国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

代理模式

2019-11-14 09:28:20
字體:
來源:轉載
供稿:網友

PRoxy,為其他對象提供一種代理以控制對這個對象的訪問。

abstract class Subject{    public abstract void Request();}
class RealSubject extends Subject{    @override    public void Request()    { 真實請求的代碼實現;}}
class Proxy extends Subject{    Subject realSubject;    @override    public void Request()    {    if (realSubject == null)    realSubject = new RealSubject();    realSubject.Request();    }}
main(){    Proxy proxy = new Proxy();    proxy.Request();}

代理模式就是在訪問對象時引入一定程度的間接性,因為這種間接性,可以附加多種用途。

 

代理模式的應用場景:

1、遠程代理:

為一個對象在不同的地址空間提供局部代表。這樣可以隱藏一個對象存在于不同地址空間的事實。

例:在應用程序中加入一個Web引用,引用一個WebService,此時會在項目中生成一個WebService的文件夾和一些文件,其實它們就是代理,這就使得客戶端程序調用代理就可以解決遠程訪問的問題。

 

2、虛擬代理:

根據需要創建開銷很大的對象。通過它來存放實例化需要很長時間的真實對象。

例:打開很大的HTML網頁時,里面的圖片是一張一張加載的。那些未打開的圖片框,就是通過虛擬代理來替代了真實的圖片,此時代理存儲了真實圖片的路徑和尺寸。

 

3、安全代理:

控制真實對象訪問時的權限。

 

4、智能指引:

當調用真實的對象時,代理處理另外一些事。

例:計算真實對象的引用次數;當第一次引用一個持久對象時,將其裝入內存;在訪問一個實際對象前,檢查是否已經鎖定它,以確保其他對象不能改變它。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长垣县| 和田县| 英吉沙县| 嘉鱼县| 临沂市| 德庆县| 三都| 扬州市| 泸定县| 清原| 布尔津县| 老河口市| 革吉县| 浙江省| 邳州市| 古交市| 米易县| 寿宁县| 台东市| 南丰县| 新和县| 嘉定区| 万源市| 女性| 鹿邑县| 巫山县| 双牌县| 乐昌市| 满洲里市| 金坛市| 临泽县| 辉县市| 香港 | 含山县| 宜兰市| 西乡县| 泰州市| 长兴县| 杭锦旗| 项城市| 潞城市|