设计模式——代理模式(静态)
定义: 为其他的对象提供一种代理,以控制对这个对象的访问。 大白话就是,对象不想展示给客户端,或者不方便展示给客户端,那就通过一个类来间接的调用这个类。 代理类和实体类共同实现一个接口,代理类中保存一个对实体类的引用,提供一个实体类一样的接口,这样,代理类就可以替换实体类了。 结构: subject:代理类和实体类共同的接口, Proxy:实现subject接口,并且保存了对实体类的引用,也可以增加一些功能。 lrealSubject:实现subject接口,Proxy所代表的实体。 UML图: eg: 生活中,我们代理的模式特别多,例如:我们经常找中介租房,亦或者是找铁哥们帮助自己送个东西给心爱的女生什么的。 中介租房: Host: //租房接口 public interface Host { public void rent(); } HostWomen: //房东实体 public class HostWoman implements Host { @Override public void rent() { System.out.println("房东租房"); } } Proxy: public class Proxy implements Host { HostWoman hw = new HostWoman(); @Override public void rent(