爲其餘對象提供一種代理,以控制這個對象的訪問。瀏覽器
其實就是兩個類實現一個接口或抽象類,在A類中實例化B類的對象,那麼A類的就能代理B類實現接口的方法。安全
Porxy代理類中聲明瞭RealSubject類的實例,在須要調用他們都實現的方法時,調用RealSubject實例的方法。就實現了對RealSubject的代理。優化
調用:代理
代理模式的4大應用場景:對象
一、遠程代理,爲一個對象在不一樣地址空間提供局部表明。blog
二、虛擬代理,根據須要建立開銷很大的對象。瀏覽器中的圖片下載,就是用這個來優化的。接口
三、安全代理,控制真實訪問對象的權限。圖片
四、只能引用,調用真實對象是代理能夠幫咱們作額外的事情,例如記錄引用次數,釋放對象等。權限