java23种设计模式八(连载)

57 阅读1分钟

**八、代理模式
**

        代理模式顾名思义就是构建一个代理类,来接管原来的类的工作,比如家里水管爆了,自己不修,则请工人来维修,买房子,自己请中介帮忙买,例子的工人、中介就是一个代理。下面请看代码实现:

        

public interface Source {

	public void method();
}

\

public class CocretSource implements Source {

	@Override
	public void method() {
		System.out.println("执行原始方法!");
	}

}

\

public class Proxy implements Source {

	private CocretSource source;
	
	public Proxy(CocretSource source){
		this.source = source;
	}
	
	@Override
	public void method() {
		System.out.println("代理前");
		source.method();
		System.out.println("代理后");
	}

}

\

public class Client {

	public static void main(String[] args) {
		Source source = new Proxy(new CocretSource());
		source.method();
	}
}


代理模式的应用场景:当需求修改了,考虑到兼容问题,不能修改原有方法的前提下,此时构建一个代理类来升级接口,就可以用代理模式来实现。\