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

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

代理模式

2019-11-14 09:34:48
字體:
供稿:網(wǎng)友

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

abstract class Subject{    public abstract void Request();}
class RealSubject extends Subject{    @override    public void Request()    { 真實(shí)請求的代碼實(shí)現(xiàn);}}
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();}

代理模式就是在訪問對象時(shí)引入一定程度的間接性,因?yàn)檫@種間接性,可以附加多種用途。

 

代理模式的應(yīng)用場景:

1、遠(yuǎn)程代理:

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

例:在應(yīng)用程序中加入一個(gè)Web引用,引用一個(gè)WebService,此時(shí)會(huì)在項(xiàng)目中生成一個(gè)WebService的文件夾和一些文件,其實(shí)它們就是代理,這就使得客戶端程序調(diào)用代理就可以解決遠(yuǎn)程訪問的問題。

 

2、虛擬代理:

根據(jù)需要?jiǎng)?chuàng)建開銷很大的對象。通過它來存放實(shí)例化需要很長時(shí)間的真實(shí)對象。

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

 

3、安全代理:

控制真實(shí)對象訪問時(shí)的權(quán)限。

 

4、智能指引:

當(dāng)調(diào)用真實(shí)的對象時(shí),代理處理另外一些事。

例:計(jì)算真實(shí)對象的引用次數(shù);當(dāng)?shù)谝淮我靡粋€(gè)持久對象時(shí),將其裝入內(nèi)存;在訪問一個(gè)實(shí)際對象前,檢查是否已經(jīng)鎖定它,以確保其他對象不能改變它。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 南郑县| 左贡县| 凌海市| 察隅县| 加查县| 昭觉县| 南投县| 兴安盟| 明光市| 邢台市| 仲巴县| 财经| 贺州市| 阿尔山市| 孝义市| 汉阴县| 寿宁县| 邹平县| 玉林市| 铜川市| 清河县| 鄂伦春自治旗| 两当县| 五寨县| 北辰区| 杂多县| 巴楚县| 河源市| 罗田县| 扎兰屯市| 桐城市| 广元市| 盖州市| 罗甸县| 满洲里市| 宁阳县| 砀山县| 盐山县| 景宁| 错那县| 开封县|