javase -- 代理模式


代理模式.

  • 为其他对象提供一种代理以控制对这个对象的访问
  • 代理类和被代理类都是某个接口的的实现类

静态代理

//静态代理
interface NetWork{
    void browse();
}

class Server implements NetWork{
    @Override
    public void browse(){
        System.out.println("使用Server访问网络");
    }

    public static void main(String[] args) {
        Server s = new Server();
        new ProxyServer(s).browse();//看似使用 Proxy对象连接网络,实际是使用Server的browse连接网络
    }
}

class ProxyServer implements NetWork{
    private NetWork n;

    public ProxyServer(NetWork n){
        this.n = n;
    }

    public void check(){
        System.out.println("连网之前的检查工作");
    }

    @Override
    public void browse(){
        check();
        n.browse();//真实的连网操作还是 Server在做
    }
}

文章作者: liuminkai
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 liuminkai !
评论
 上一篇
javase -- 内部类 javase -- 内部类
内部类(Inner class). 成员内部类 静态成员内部类 非静态成员内部类 局部内部类 方法内 代码块内 构造器内 成员内部类.一方面,作为外部类的成员 调用外部类的结构 外部类.this.结构名 或 结构名(在不重名的情
2020-07-30
下一篇 
javase -- 抽象类与接口的异同 javase -- 抽象类与接口的异同
抽象类与接口的异同.相同点. 都不能实例化 都需要类去实现 不同点. 接口不能有构造方法,抽象类可以有。 一个类可以实现多个接口,一个抽象类只能别一个类继承 接口不能有方法体,抽象类可以有。(JDK1.7及以前) 接口不能有静态方法,抽象
2020-07-30
  目录