代理设计模式
Posted cainame
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代理设计模式相关的知识,希望对你有一定的参考价值。
模拟代理服务器处理用户上网请求
1.首先是Network接口定义网络协议
interface Network { // Net开发协议 public void browse(); // 定义浏览的抽象方法 }
2.配置运营商服务
class Real implements Network { @Override public void browse() { System.out.println("正在上网!"); } }
3.配置代理商
class Proxy implements Network { // 代理上网 private Network network; public Proxy(Network network) { //代理商的构造方法,传入一个真实的代理商来进行实例化 this.network = network; } @Override public void browse() { //处理用户上网操作 this.check(); //检查用户是否合法 this.network.browse();//执行真实的上网操作 } public void check() { System.out.println("检查用户是否合法"); } }
4.用户客户端
public class test2 { public static void main(String[] args) { Network net = null; net = new Proxy(new Real()); net.browse(); } }
总结:首先用户向代理服务器请求上网,来实例化一个代理服务器对象,然后调用brower方法,在实例化代理服务器时必须传入一个真实的运营商,代理服务器处理用户上网请求时,会先执行check()方法,然后再执行传入的真实运营商对象的实际处理上网请求的动作。
以上是关于代理设计模式的主要内容,如果未能解决你的问题,请参考以下文章