美文网首页爱编程,爱生活
Java设计模式<代理模式>

Java设计模式<代理模式>

作者: 熬夜的猫头鹰 | 来源:发表于2018-06-16 15:03 被阅读2次

Java设计模式<代理模式>

意图

  • 限制对象的访问控制
  • 客户端无需知道代理的对象

和装饰模式的共同点

  • 都能对现有的类进行的动态的扩展功能

和装饰模式的共区别

  • 装饰模式注重增加已有类的功能,客户端知道被装饰的对象
  • 代理模式注重限制对象的访问,客户端无需知道被装饰的对象

场景

VPN代理访问网站

代码

定义访问接口

public interface VisitWeb {

    public void visit();
}

北京站点

public class BJVisit implements VisitWeb{
    public void visit() {
        System.out.println("Beijing visit the web");
    }
}


代理

public class ProxyVPN implements VisitWeb {

    private VisitWeb visitWeb;

    public ProxyVPN() {
        this.visitWeb = new BJVisit();
    }

    public void visit() {
        visitWeb.visit();
    }
}

测试类


public class DemoMain {
    public static void main(String[] args) {
        VisitWeb visitWeb = new ProxyVPN();
        visitWeb.visit();
    }
}

输出

Beijing visit the web

注意DemoMain 并不知道代理了BJVisit

相关文章

  • Java设计模式<代理模式>

    Java设计模式<代理模式> 意图 限制对象的访问控制 客户端无需知道代理的对象 和装饰模式的共同点 都能对现有的...

  • java动态代理(JDK和cglib)(转载自http://ww

    java动态代理(JDK和cglib) JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java观察者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java代理模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java策略模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • Java代理模式之JDK动态代理

    了解什么是动态代理模式,可参考Java设计模式之代理模式 简介 JDK动态代理是java.lang.reflect...

网友评论

    本文标题:Java设计模式<代理模式>

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