/**
* 接口
* @author c_qiaoding
*
*/
public interface Subject {
void visit();
* 接口
* @author c_qiaoding
*
*/
public interface Subject {
void visit();
}
/**
* 真实目标对象
* @author c_qiaoding
*
*/
public class RealSubject implements Subject {
@Override
public void visit() {
System.out.println("RealSubject RealSubject RealSubject。。。");
}
}
/**
* 代理目标对象
* @author c_qiaoding
*
*/
public class ProxySubject implements Subject {
public Subject subject;
public ProxySubject(Subject subject){
this.subject = subject;
}
@Override
public void visit() {
subject.visit();
}
}
/**
* 测试类
* @author c_qiaoding
*
*/
public class Test {
public static void main(String[] args) {
ProxySubject subject = new ProxySubject(new RealSubject());
subject.visit();
}
}
控制台输出:
RealSubject RealSubject RealSubject。。。