定义
为其他对象提供一种代理来控制对这个对象的访问。
实例
夫妇(Orign)找婚介公司(Porxy)策划婚礼事项。
代码
客户端
public class Client {
public static void main(String[] args) {
//创建代理对象
ISubject subject = new Porxy(new Orign());
subject.doSomething();
}
}
真实对象
public class Orign implements ISubject{
@Override
public void doSomething(){
System.out.println("Orign do something");
}
}
代理对象
public class Porxy implements ISubject{
private Orign orign;
public Porxy(Orign o){
this.orign = o;
}
@Override
public void doSomething() {
System.out.println("Porxy do something");
this.orign.doSomething();
}
}
公共接口
public interface ISubject {
void doSomething();
}