8、代理模式
java
代理模式顾名思义就是构建一个代理类,来接管原来的类的工做,好比家里水管爆了,本身不修,则请工人来维修,买房子,本身请中介帮忙买,例子的工人、中介就是一个代理。下面请看代码实现:ide
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(); } }代理模式的应用场景:当需求修改了,考虑到兼容问题,不能修改原有方法的前提下,此时构建一个代理类来升级接口,就能够用代理模式来实现。