Spring静态代理模式
核心:通过在代理类,实现添加一些附属功能。
1.创建租房子方法
public interface Rent {
public void rent();
}
2.创建房东对象,实现租房,要出租房子
//房东
public class Host implements Rent {
public void rent() {
System.out.println("房东要出租房子");
}
}
3.创建代理类,将房东租房进行代理,同时添加附加功能,如添加:seeHouse()和fare()方法。
//代理
public class Proxy implements Rent {
private Host host;
public Proxy() {
}
public Proxy(Host host) {
this.host = host;
}
public void rent() {
seeHouse();
fare();
host.rent();
}
public void seeHouse(){
System.out.println("中介带你看房");
}
public void fare(){
System.out.println("收中介费");
}
}
4.顾客调用代理类对象,从而实现附加功能的实现
public class Client {
public static void main(String[] args) {
Host host = new Host();
//代理,会增加一些附加操作
Proxy proxy = new Proxy(host);
//找中介租房
proxy.rent();
}
}