代理模式-Proxy

2016-12-21  本文已影响0人  Josaber

每个模式的名称就表明了该模式的作用,代理模式就是用代理类替代原对象进行一些操作。采用代理类调用原有的方法,可以对原对象产生的结果进行控制。

举个栗子:

定义一个接口

public interface Sourceable { 
    void function();
}

定义实现类

public class Source implements Sourceable {
    @Override
    public void function() { 
        System.out.println("function"); 
    }
}

定义代理

public class Proxy implements Sourceable {  
  
    private Sourceable source;  

    public Proxy(){  
        this.source = new Source();  
    }  

    public Proxy(Sourceable source){  
        this.source = source;  
    }  

    @Override  
    public void function() {  
        before();  
        source.function();  
        atfer();  
    }  

    private void atfer() {  
        System.out.println("after");  
    }  

    private void before() {  
        System.out.println("before");  
    }  
}

详细代码在这里

总结

上一篇 下一篇

猜你喜欢

热点阅读