【设计模式】代理模式

文章内容输出来源:拉勾教育JAVA就业训练营
总目录跳转链接:总目录
设计模式总目录:【设计模式】设计模式(目录)
如有侵权请联系本人
邮箱:xiaogueika@tom.com

代理模式

1、基本概念

  • 代理模式就是找一个代理类替原对象进行一些操作。
  • 比如我们在租房子的时候找中介,再如我们打官司需要请律师,中介和律师在这里就是我们的代理。

2、类图结构

在这里插入图片描述
参考装饰模式(直接发改进后的)

public class Proxy implements Sourceable {

    private Source source;

    public Proxy() {
        this.source = new Source();
    }
    @Override
    public void method() {
        source.method();
        System.out.println("我和装饰器模式不一样");
    }
}

实现类

public class SourceableTest {
    public static void main(String[] args) {
        Sourceable sourceable1 = new Source();
        sourceable1.method();
        System.out.println("-------------------------");
        //使用代理类实现功能
        Sourceable sourceable = new Proxy();
        sourceable.method();
    }
}

3、实际意义

  • 如果在使用的时候需要对原有的方法进行改进,可以采用一个代理类调用原有方法,并且对产生的结果进行控制,这种方式就是代理模式。
  • 使用代理模式,可以将功能划分的更加清晰,有助于后期维护。

4、代理模式和装饰器模式的比较

  • 装饰器模式通常的做法是将原始对象作为一个参数传给装饰者的构造器,而代理模式通常在一个代理类中创建一个被代理类的对象。
  • 装饰器模式关注于在一个对象上动态的添加方法,然而代理模式关注于控制对对象的访问。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值