1.代理模式的定义
为其他对象提供一种代理已控制该对象的访问。
2.代理模式的UML
Proxy: 代理对象。
Subject :目标接口,定义目标对象与代理的接口,这样就可以在任何使用具体对象的地方使用代理。
RealSubject:真实的对象。
3.代码实现
public interface Subject{
public void request();
}
public class RealSubject implements Subject{
public void request(){
System.out.println("RealSubject");
}
}
public class Proxy implements Subject{
private RealSubject realSubject;
public Proxy(RealSubject realSubject){
this.realSubject=subject;
}
public void request(){
this.realSubject.request();
}
}
public class Client{
public static void main(String[] args){
Proxy proxy=new Proxy(new RealSubject());
proxy.request();
}
}
4.代理模式的本质:控制对象的访问