代理模式定义
为其他对象提供一种代理以控制对这个对象的访问,在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。
特点
1.RealSubject 和 Proxy 都继承Subject 类
2.都有共同的接口Request().
3 .Proxy 中应该有RealSubject 的对象
简单代理模式中,代理类知道被代理类的行为,因为代理类与被代理类实现的是同一个接口,因此代理类与被代理类的结构是相同的;
与策略模式的区别
策略容器并不知道内部策略的详细信息,因为容器并没有实现与内部策略相同的接口,即容器与内部策略只是简单的组合关系,容器只是将内部策略的行为抽取出来,进行了统一的实现
策略模式在项目中适用于 实现同一个目标但是有很多不同的做法的情况,代理模式主要针对对象的访问控制。