读书人

6、代理模式

发布时间: 2012-11-03 10:57:44 作者: rapoo

六、代理模式

1.什么是代理模式 Proxy

?

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

?

?

?

?

2.为什么要使用代理模式

?

?? 第一,远程代理,为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实,WebService就使用的代理。

?? 第二,虚拟代理,是根据需要创建开销很大的对象,通过它来存放实例化需要很长时间的真是对象。这样可以优化性能,比如当打开一张很大的网页时。

?? 第三,安全代理,用来控制真实对象访问的权限。

?? 第四,智能指引,是指当调用真实对象时,代理处理另外一些事。

?

?

?

?

?

3.怎样用代理模式

?

?6、代理模式

?

?

?

Subject类

public class Subject {public void request(){}}

?

RealSubject类

public class RealSubject extends Subject {public void request(){System.out.println("真实请求");}}

?

Proxy类

public class Proxy extends Subject {public RealSubject m_RealSubject;public void request(){if(m_RealSubject == null){m_RealSubject = new RealSubject();}m_RealSubject.request();}}

?

?

?

?

?

?

?

?

?

?

?

读书人网 >软件架构设计

热点推荐