静态代理设计模式就是只做自己参与的事情就行了,其他的由代理角色来做。比如你要结婚,布置婚礼现场和脑洞房之类的事情交给婚庆公司来做,你只需要参与结婚就行。
/*
*静态代理 设计模式
*/
public class StaticProxy {
public static void main(String[] args) {
You you = new You();
WeddingCompany company = new WeddingCompany(you);
company.marry();
}
}
//真实角色和代理角色实现的接口
interface Marry{
public abstract void marry();
}
//真实角色
class You implements Marry{
public void marry() {
System.out.println("结婚....");
}
}
//代理角色
class WeddingCompany implements Marry{
private Marry you;
public WeddingCompany(){
}
public WeddingCompany(You you){
this.you=you;
}
public void before(){
System.out.println("布置婚礼现场.....");
}
public void after(){
System.out.println("闹洞房......");
}
public void marry() {
before();
you.marry();
after();
}
}