静态代理
静态代理模式
静态代理对象和真实对象实现同一接口
package thread;
//静态代理模式总结:
//真实对象和代理角色都要实现同一接口
//代理角色要代理真实角色
//好处:
//代理对象可以做很多真实对象做不了的事情
//真是对象专注做自己的事情
public class test{
public static void main(String[] args) {
WeddingCompany weddingCompany = new WeddingCompany(new You());
weddingCompany.HappyMarry();
}
}
interface Marry{
void HappyMarry();
}
//真实角色,你去结婚
class You implements Marry{
@Override
public void HappyMarry() {
System.out.println("我结婚了,我好开心");
}
}
//代理角色,帮你结婚
class WeddingCompany implements Marry{
private Marry targrt;
public WeddingCompany(Marry targrt) {
this.targrt = targrt;
}
@Override
public void HappyMarry() {
before();
this.targrt.HappyMarry();//这就是真实角色
after();
}
private void after() {
System.out.println("结婚之后,付尾款");
}
private void before() {
System.out.println("结婚之前,布置现场");
}
}
浙公网安备 33010602011771号