爱编程,爱生活

Java设计模式<代理模式>

2018-06-16  本文已影响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

上一篇 下一篇

猜你喜欢

热点阅读