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

代理设计模式

时间:2015-07-08 18:44:58      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

  代理设计模式是接口的应用之一,一个代理操作,一个真实操作。Runnable接口实现线程就是应用代理设计模式,如图:

技术分享

以找中Jie租房为例的代理设计模式代码:

public class ProxyDemo {
	public static void main(String[] args) {
		RentHouse rent = new RentCompany(new RealRent());
		rent.house("小心黑ZhongJie");
		rent.house("租房贵");
	}
}
interface RentHouse {//租房
	public void house(String url);
}
class RealRent implements RentHouse {
	public void house(String url) {
		System.out.println("北京:" + url);
	}
}

class RentCompany implements RentHouse {
	private RentHouse r;//保存真正租房操作
	public RentCompany(RentHouse r) {
		this.r = r;
	}
	public boolean check(String url) {
		if (url.contains("黑ZhongJie")) {
			System.out.println("不能租房");
			return false;
		}
		return true;
	}
	public void house(String url) {
		if (this.check(url)) {// 通过检查了
			this.r.house(url);//真实操作
		}
	}
}

  租房接口下有两个操作,一个真实租房操作,一个是中Jie公司。我们只需要租到房子就行,而租房的各种流程都交给中Jie公司处理,不用我们关心。即是说,代理操作处理复杂业务,真实操作处理核心业务,二者分开

代理设计模式

标签:

原文地址:http://www.cnblogs.com/wujinsen/p/4630733.html

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