Java中常见的设计模式之代理设计模式

代理设计模式

     代理设计模式就是指由一个代理主题来操作真实主题,真实主题来操作执行具体的业务,而代理主题负责其他相关业务的处理。
     代理模式有三种角色:抽象角色,代理角色和真实角色。
     抽象角色:声明真实角色和代理角色的共同接口。
     代理角色:代理角色内部包含对真实角色的引用,从而可以操作真实角色,同时代理角色提供与真实角色相同的接口以便在任何时候都能代替真实对象。同时代理对象可以再执行真实操作时,附加其他的操作,相当于对真实对象进行封装。
    真实角色:代理角色所代表的真实对象,是最终使用的角色。
    Java代码示例:
   

    interface NetWork{
        public void browse();
    }
    class Real implements NetWork{
        public void browse(){
            System.out.println("Start search");
        }
    }
    class Froxy implements NetWork{
        private NetWork network;
        public Froxy(NetWork network){
            this.network = network;
        }
        public void check(){
            System.out.println("Checking");
        }
        public void browse(){
            this.check();
            this.network.browse();
        }
    }
    public class FroxyDemo{
        public static void main(String[]args){
            NetWork nt = null;
            nt = new Froxy(new Real());
            nt.browse();
        }
    }

    代理模式的一个好处就是对外提供统一的接口方法,代理类在接口中对真实的类进行操作,从而在不影响外部调用的情况下,进行系统拓展。
    当我们需要使用的对象很复杂或者需要很长时间去构造,这时就可以使用代理模式(Proxy)。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值