//租房接口
public interface Rent {
public void rent();
}
//房东去实现租房接口
public class Host implements Rent {
@Override
public void rent() {
System.out.println("房东要出租房子");
}
}
//代理类
public class Proxy implements Rent{
private Host host;
//有参
public Proxy(Host host){
this.host=host;
}
@Override
public void rent() {
//代理直接掉host的方法 进行代理
host.rent();
seeHouse();
Money();
}
public void seeHouse(){
System.out.println("看房子");
}
public void Money(){
System.out.println("谈金钱");
}
}
public class Proxy implements Rent{
private Host host;
//有参
public Proxy(Host host){
this.host=host;
}
@Override
public void rent() {
//代理直接掉host的方法 进行代理
host.rent();
seeHouse();
Money();
}
//代理可以扩展其他功能
public void seeHouse(){
System.out.println("看房子");
}
public void Money(){
System.out.println("谈金钱");
}
}
public class Client {
public static void main(String[]args){
//需要把房东new出来
Host host = new Host();
//把房东拿给代理 让代理直接掉房东的方法
Proxy proxy = new Proxy(host);
proxy.rent();
}
}