美文网首页
代理模式

代理模式

作者: yuzhiyi_宇 | 来源:发表于2019-03-02 19:52 被阅读0次

    代理模式(Proxy),为其他对象提供一种代理以控制对这个对象的访问。

    image

    建造者模式中的角色:

    • Subject:抽象主题类,声明真实主题与代理的共同接口方法。
    • RealSubject:真实主题类,代理类代表的真实主题。客服端通过代理类间接地调用真实主题类的方法。
    • Proxy:代理类,持有对真实主题类的引用,在其所表现的接口方法中调用真实主题中响应的接口方法执行。

    代理模式的简单实现

    (1)抽象主题类

    public interface IGiveGift {
        void giveFlowers();
    }
    

    (2)真实主题类

    public class Pursuit implements IGiveGift {
        @Override
        public void giveFlowers() {
            System.out.println("赠送鲜花");
        }
    }
    

    (3)代理类

    代理类同样实现 IGiveGift,同时持有被代理者。

    public class Proxy implements IGiveGift{
    
        Pursuit pursuit;
    
        public Proxy() {
            pursuit = new Pursuit();
        }
    
        @Override
        public void giveFlowers() {
            pursuit.giveFlowers();
        }
    }
    

    (4)客户端调用

    public class Client {
        public static void main(String[] args) {
            Proxy proxy = new Proxy();
            proxy.giveFlowers();
        }
    }
    

    相关文章

      网友评论

          本文标题:代理模式

          本文链接:https://www.haomeiwen.com/subject/gijyuqtx.html