编写的Proxy程序如下:
interface Network{
public void browse();
}
class Real implements Network{
public void browse(){
System.out.println("上网浏览信息");
}
}
class Proxy implements Network{
private Network network;
public Proxy(Network network){
this.network=network;
}
public void check(){
System.out.println("检查用户是否合法");
}
public void browse(){
this.check();
this.network.browse();
}
}
public class TestProxy {
public static void main(String args[]){
Network net=null;
net = new Proxy(new Real());
net.browse();
}
}
运行结果如下:
分析:在本程序中,真实的主题实现类(Real)完成的只是上网的最基本功能,而代理主题(Proxy)要做比真实主题更多的相关业务操作。
本程序可作为面试题:编写一个Proxy程序。