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

首頁 > 編程 > Java > 正文

JAVA 靜態(tài)代理模式詳解及實例應(yīng)用

2019-11-26 13:31:51
字體:
供稿:網(wǎng)友

JAVA 靜態(tài)代理模式

代理模式(Proxy):為其他對象提供一種代理以控制對這個對象的訪問。

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

在這實現(xiàn)代碼之前,先講一個簡單的生活故事,我們都知道我們周邊有很多公司有房屋買賣或租賃的業(yè)務(wù),比如鏈家(LianJia),但鏈家本身是不存在任何實際房屋資產(chǎn)的,他所售賣租賃的房屋均需要房屋產(chǎn)權(quán)所有人(HomeMaster)提供,才得以實現(xiàn)公司的房源需求;同時公司要的賣房租房業(yè)務(wù)均需要公司員工(Seller)來實現(xiàn),但員工要實現(xiàn)該方法,必須經(jīng)過公司授權(quán)以及動用公司的業(yè)務(wù)資源渠道才可以完成任務(wù)。故事講到這里,我們應(yīng)該清楚這里的Seller其實就是代理模式中靜態(tài)代理了,那么我們開始該模式的代碼書寫(這里省略了代理實現(xiàn)方法前后的業(yè)務(wù)邏輯):

interface LianJia{//LianJia提供房屋買賣的渠道方法(公司業(yè)務(wù))  public void sellHouse();}class HomeMaster implements LianJia{//房主需要通過鏈家賣房(實現(xiàn)公司的業(yè)務(wù)渠道)  public void sellHouse(){    System.out.println("我有套房子要賣");  }}class Seller implements LianJia{//鏈家的業(yè)務(wù)需要Seller實現(xiàn)  private LianJia lj;//聲明鏈家公司(可理解為必須證明該seller是鏈家的),方便調(diào)用方法  public Seller(LianJia lj){    this.lj = lj;  }  public void sellHouse(){    lj.sellHouse();//實際實現(xiàn)方式需要調(diào)用公司的業(yè)務(wù)渠道方法  }}public class ProxyMode{  public static void main(String[] args){    HomeMaster hm = new HomeMaster();    Seller s = new Seller(hm);//代理代房主實現(xiàn)賣房需求    s.sellHouse();  }}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 余姚市| 武乡县| 蓝山县| 炎陵县| 通榆县| 宁波市| 栖霞市| 高尔夫| 石景山区| 克拉玛依市| 湄潭县| 太和县| 萨嘎县| 苏尼特右旗| 达孜县| 迁安市| 北宁市| 虞城县| 怀集县| 东莞市| 平湖市| 晋城| 囊谦县| 吉木萨尔县| 广河县| 金塔县| 营山县| 巩义市| 珲春市| 积石山| 黄冈市| 车致| 长乐市| 思茅市| 土默特右旗| 辛集市| 黔东| 定日县| 揭西县| 兴安县| 黎川县|