代码如下:
interface Tool{
void work();
}
class realTool implements Tool{//核心模块
public void work(){
System.out.println("正在加热(核心步骤)");
}
}
class proxyTool implements Tool{//代理模块
public void prepare(){
System.out.println("向加热器中倒水(准备步骤)");
}
private Tool realTool;
public proxyTool(Tool realTool){
this.realTool=realTool;
}
public void destory(){
System.out.println("倒进水杯(结束步骤,收尾)");
}
public void work(){
this.prepare();
this.realTool.work();
this.destory();
}
}
public class proxydemo{
public static void main(String args []){
Tool t=new proxyTool(new realTool());
t.work();
}
}
运行结果如下:
D:\code\java>javac proxydemo.java
D:\code\java>java proxydemo
向加热器中倒水(准备步骤)
正在加热(核心步骤)
倒进水杯(结束步骤,收尾)