您的位置:首页 > 其它

设计模式之代理模式

2015-07-04 14:01 239 查看

代理模式

为其他对象提供一种代理,以控制对这个对象的访问

Subject类

package com.hml.proxy;

public interface Subject {

public void request();
}


RealSubject类

package com.hml.proxy;

public class RealSubject implements Subject {

public void request() {

}

}


ProxySubject类(包含被代理的对象)

package com.hml.proxy;

public class ProxySubject implements Subject {

private RealSubject subject;

public void request() {
if (subject == null) {
subject = new RealSubject();
}
subject.request();
}

}


类图


代理模式应用

1、远程代理,为不同的对象在不同的地址空间提供局部代表,这样可以隐藏一个对象在不同的地址空间的事实。

2、虚拟代理,根据需要创建开销很大的对象,通过它来存放实例化需要很长时间的真实对象

3、安全代理,控制对真实对象的访问权限

4、智能引导,指当调用真实的对象时,代理处理另外一些事
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: