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

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

代理模式

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

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、智能指引:

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

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 基隆市| 阿克陶县| 东乌珠穆沁旗| 班戈县| 都安| 西丰县| 略阳县| 奉贤区| 时尚| 大余县| 南充市| 阜阳市| 新建县| 贵港市| 上饶县| 甘肃省| 喀喇| 叶城县| 孙吴县| 凤阳县| 岳普湖县| 清河县| 洮南市| 木兰县| 大同县| 拜城县| 方正县| 土默特左旗| 确山县| 明光市| 弋阳县| 阜康市| 镇赉县| 土默特右旗| 延吉市| 鄯善县| 宣恩县| 玉门市| 苏州市| 孝昌县| 阿勒泰市|