码迷,mamicode.com
首页 > 编程语言 > 详细

Java常见设计模式之代理模式

时间:2015-04-06 12:47:47      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:

     指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其它相关业务的处理。比如生活中的通过代理访问网络,客户通过网络代理连接网络(具体业务),由代理服务器完成用户权限和访问限制等与上网相关的其他操作(相关业务)。代理的思想在我们日常生活中无处不在。下面我通过一个简单的代码先大致了解一下代理的相关内。

     示例代码如下:

    

package com.yonyou.test;

/**
 * 创建一个上网的接口
 * @author 小浩
 * @创建日期 2015-4-6
 */
public interface Network {
  //用户真正的上网需求
  void browse();	
}

 

package com.yonyou.test;

/**
 * 真正的上网需求类,实现Network接口
 * @author 小浩
 * @创建日期 2015-4-6
 */
public class Real implements Network{

	@Override
	public void browse() {
      System.out.println("您好,当前用户正在上网操作~~~");		
	}

}

 

  

package com.yonyou.test;

/**
 * 创建一个代理接口
 * @author 小浩
 * @创建日期 2015-4-6
 */
public class Proxy implements Network{
    Network network=null;
    //初始化被代理对象
	public Proxy(Network network){
		this.network=network;
	}
	//模式权限检查的操作
	public void check(){
		// 模拟权限检查
		System.out.println("您好,我们正在检查当前用户是否有上网的权限...");
	}
    	
	@Override
	public void browse() {
		//增强操作,模拟权限检查
		check();
        //用户真正的操作
	    network.browse();	
	}
	
}

 

package com.yonyou.test;



/**
 * TreeSet测试类
 * @author 小浩
 * @创建日期 2015-4-3
 */
public class Test{
	public static void main(String[] args) {
		//创建代理类
		Network network=new Proxy(new Real());
		network.browse();
	}
}

 
	
	

 

  

 

  

 

  

 

Java常见设计模式之代理模式

标签:

原文地址:http://www.cnblogs.com/xiohao/p/4395714.html

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