码迷,mamicode.com
首页 > 其他好文 > 详细

代理模式

时间:2018-04-26 11:54:05      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:keyword   container   class   lsp   table   highlight   code   代理服务器   生活   

.代理设计模式

       指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其他相关业务的处理。比如生活中的通过代理访问网络,客户通过网络代理连接网络(具体业务),由代理服务器完成用户权限和访问限制等与上网相关的其他操作(相关业务)。

      示例代码如下:

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
34
interface Network { // 定义Network接口 
    public void browse(); // 定义浏览的抽象方法 
}  
   
class Real implements Network { // 真实的上网操作 
    public void browse() { // 覆写抽象方法 
        System.out.println("上网浏览信息!");  
    }  
}  
   
class Proxy implements Network { // 代理上网 
    private Network network;  
   
    public Proxy(Network network) {// 设置代理的真实操作 
        this.network = network; // 设置代理的子类 
    }  
   
    public void check() { // 身份验证操作 
        System.out.println("检查用户是否合法!");  
    }  
   
    public void browse() {  
        this.check(); // 调用具体的代理业务操作 
        this.network.browse(); // 调用真实的上网操作 
    }  
}  
   
public class ProxyDemo {  
    public static void main(String args[]) {  
        Network net = null// 定义接口对象 
        net = new Proxy(new Real()); // 实例化代理,同时传入代理的真实操作 
        net.browse(); // 调用代理的上网操作  
    }  

 

代理模式

标签:keyword   container   class   lsp   table   highlight   code   代理服务器   生活   

原文地址:https://www.cnblogs.com/jiang--nan/p/8949811.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!