1.意图 对其它对象提供一种代理以控制对这个对象的访问
例如一个简单的代理模式可以这样实现
public abstract class Subject {
public abstract void visi();
}
public class RealSubject extends Subject{
@Override
public void visi() {
// TODO Auto-generated method stub
System.out.append("RealSubject visi");
}
}
public class ProxySubject extends Subject {
private RealSubject mSubject;
public ProxySubject(Subject subject) {
this.mSubject = (RealSubject) subject;
}
@Override
public void visi() {
// TODO Auto-generated method stub
mSubject.visi();
}
}
public class Client {
public static void main(String[] args) {
RealSubject real = new RealSubject();
ProxySubject proxy = new ProxySubject(real);
proxy.visi();
}
}