国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - java設(shè)計模式學(xué)習(xí)之代理模式

java設(shè)計模式學(xué)習(xí)之代理模式

2021-01-17 14:38南國木棉 Java教程

這篇文章主要為大家詳細介紹了java設(shè)計模式學(xué)習(xí)之代理模式的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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

代理模式結(jié)構(gòu)圖

java設(shè)計模式學(xué)習(xí)之代理模式

模擬需求:3班小張喜歡1班小紅,但是不認識小紅,委托1班小明送給小紅禮物。

1:創(chuàng)建一個小張和小明都能實現(xiàn)的接口。

java" id="highlighter_811893">
?
1
2
3
4
5
6
7
8
9
10
11
12
13
package proxymodel;
 
/**
 * 總的接口
 * @author 我不是張英俊
 *
 */
interface isendgift {
 
  void givedolls();
  void giveflowers();
  void givechocolate();
}

2:實現(xiàn)小張送禮物。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package proxymodel;
 
/**
 *
 * 小張是送鮮花的本體,送其實是小張送的,小明只是借助小張的送的鮮花去給小紅
 * @author 我不是張英俊
 *
 */
public class pursuit implements isendgift{
 
  string mm;
  public pursuit(string mm){
    this.mm=mm;
  }
  @override
  public void givedolls() {
    // todo auto-generated method stub
    system.out.println("送"+mm+"洋娃娃");
  }
 
  @override
  public void giveflowers() {
    // todo auto-generated method stub
    system.out.println("送"+mm+"鮮花");
  }
 
  @override
  public void givechocolate() {
    // todo auto-generated method stub
    system.out.println("送"+mm+"巧克力");
  }
 
}

3:實現(xiàn)小明通過小張送的禮物,轉(zhuǎn)交給小紅。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package proxymodel;
 
/**
 * 小明轉(zhuǎn)送小紅禮物的完成方法,其實是借助小張送的禮物來完成的,此處小明即為代理
 * @author 我不是張英俊
 *
 */
public class proxy implements isendgift{
 
  pursuit gg;
  public proxy(string mm){
    gg=new pursuit(mm);
  }
  
  @override
  public void givedolls() {
    // todo auto-generated method stub
    gg.givedolls();
  }
 
  @override
  public void giveflowers() {
    // todo auto-generated method stub
    gg.giveflowers();
  }
 
  @override
  public void givechocolate() {
    // todo auto-generated method stub
    gg.givechocolate();
  }
 
}

4:測試類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package proxymodel;
 
/**
 * 需求,3班小張喜歡1班小紅,但是不認識小紅,委托1班小明給小紅送東西
 * 總結(jié):小張送小紅禮物,小張送,然后小明通過小張接過送的禮物,給小紅,
 * 其實小明是借助小張送的禮物,來代理完成送禮物的操作。
 * 代理模式
 * @author 我不是張英俊
 *
 */
public class test {
 
  public static void main(string[] args) {
    string mm="小紅";
    proxy xiaoming=new proxy(mm);
    xiaoming.givedolls();
    xiaoming.giveflowers();
    xiaoming.givechocolate();
 
  }
 
}

5:控制臺

送小紅洋娃娃
送小紅鮮花
送小紅巧克力

總結(jié):

代理模式適用場景

1:遠程代理,也就是為一個對象在不同的地址空間提供局部代表。這樣可以隱瞞一個對象存在于不同地址空間的事實。

2:虛擬代理,是根據(jù)需要創(chuàng)建開銷很大的對象。通過它來存放實例化需要很長時間的真實對象。

3:安全代理,用來控制真實對象訪問時的權(quán)限。

4:智能指引,是指當調(diào)用真實的對象時,代理處理另外一些事。

 優(yōu)點:

1:代理模式能夠協(xié)調(diào)調(diào)用者和被調(diào)用者,在一定程度上降低了系統(tǒng)的耦合度;

2:代理對象可以在客戶端和目標對象之間起到中介的作用,這樣起到了保護目標對象的作用。

缺點:

1:由于在客戶端和真實對象之間增加了代理對象,因此有些類型的代理模式可能會造成請求的處理速度變慢;

2:實現(xiàn)代理模式需要額外的工作,有些代理模式的實現(xiàn)非常復(fù)雜。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/hrlizhi/p/7651332.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美成人精品一区二区男人看 | 婷婷午夜激情网 | 欧美日韩在线一区二区三区 | 免费www | 综合久久网 | 精品无码久久久久国产 | 丝袜+亚洲+另类+欧美+变态 | 99在线播放 | 精品国产一区二区三区在线观看 | www.色午夜.com | 男人影音| a级毛片免费高清视频 | 日本国产欧美 | 亚洲精品成人18久久久久 | 日韩av在线中文字幕 | 日韩一区二区三区在线观看 | www久久久久久久 | 国产精品免费一区二区 | 综合久久综合 | 91视频com| 国产日韩一区二区 | www.久久.com | 亚洲国产精品一区二区久久 | av片免费看 | 一级黄色一级毛片 | 日韩精品成人 | 黄色一级片免费 | 亚洲一区国产视频 | 欧美精品一二三区 | 亚洲情av | 这里只有精品在线视频观看 | 中文字幕高清免费日韩视频在线 | 淫片免费观看 | 成人精品久久 | 精品久久一区二区三区 | 国产一区二区三区成人 | 亚洲精品久久久久久下一站 | 午夜视频在线 | 久久综合电影 | 91看片网站| 另类久久 |