设计模式-代理模式

Posted vbirdbest

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式-代理模式相关的知识,希望对你有一定的参考价值。

代理设计模式:当访问对象不适合或者不能直接引用目标对象,此时需要通过一个中间商来作为中介来完成。如买房找中介,相亲找媒婆,买火车票找代售点。代理提供了与被代理相同的接口,其内部含有对被代理的引用,可以访问、控制或者扩展真实主题的功能。

静态代理:在编译期生成

动态代理:在运行时动态生成。JDK代理和CGLib代理。

public interface SellTickets 
    void sell();


public class TranStationImpl implements SellTickets 
    @Override
    public void sell() 
        System.out.println("火车站卖票");
    

public class TranProxy implements SellTickets
    private TranStationImpl tranStation = new TranStationImpl();

    @Override
    public void sell() 
        System.out.println("收取服务费");
        tranStation.sell();
        System.out.println("送888元SPA");
    


public class Client 
    public static void main(String[] args) 
        TranProxy tranProxy = new TranProxy();
        tranProxy.sell();
    

以上是关于设计模式-代理模式的主要内容,如果未能解决你的问题,请参考以下文章

代理模式-2(动态代理)

代理模式-2(动态代理)

单例模式之代理模式

揭秘设计模式之代理模式

玩转JAVA代理模式

中介者模式