package DesignPatterns;
/*静态代理分为三种角色
公共接口
代理角色 1 要把真实角色的引用传递到代理角色中 在代理角色中调自己的方法 2 代理角色也需要继承公共的接口
真实角色 2 需要继承公共的接口
*/
public class StaticProxy implements Marry {
public static void main(String[] args) {
// TODO Auto-generated method stub
StaticProxy you = new StaticProxy();
new WeddingCompany(you).before();
}
@Override
public void test() {
// TODO Auto-generated method stub
System.out.print("我结婚了");
}
}
interface Marry {
public abstract void test();
}
class WeddingCompany implements Marry {
private Marry you;
WeddingCompany(Marry you) {
this.you = you;
}
public void before() {
System.out.print("清理狗窝。。。。。。");
you.test();
after();
}
@Override
public void test() {
// TODO Auto-generated method stub
System.out.print("WeddingCompany");
}
public void after() {
System.out.print("清理现场。。。。。。");
}
}
/*静态代理分为三种角色
公共接口
代理角色 1 要把真实角色的引用传递到代理角色中 在代理角色中调自己的方法 2 代理角色也需要继承公共的接口
真实角色 2 需要继承公共的接口
*/
public class StaticProxy implements Marry {
public static void main(String[] args) {
// TODO Auto-generated method stub
StaticProxy you = new StaticProxy();
new WeddingCompany(you).before();
}
@Override
public void test() {
// TODO Auto-generated method stub
System.out.print("我结婚了");
}
}
interface Marry {
public abstract void test();
}
class WeddingCompany implements Marry {
private Marry you;
WeddingCompany(Marry you) {
this.you = you;
}
public void before() {
System.out.print("清理狗窝。。。。。。");
you.test();
after();
}
@Override
public void test() {
// TODO Auto-generated method stub
System.out.print("WeddingCompany");
}
public void after() {
System.out.print("清理现场。。。。。。");
}
}