代理模式总结

代理模式

​ 代理模式在 Java 开发中是一种比较常见的设计模式。设计目的旨在为服务类与客户类之间插入其他功
能,插入的功能对于调用者是透明的,起到伪装控制的作用。如租房的例子:房客、中介、房东。对应
于代理模式中即:客户类、代理类 、委托类(被代理类)。
​ 为某一个对象(委托类)提供一个代理(代理类),用来控制对这个对象的访问。委托类和代理类有
一个共同的父类或父接口。代理类会对请求做预处理、过滤,将请求分配给指定对象。
​ 生活中常见的代理情况:
​ 租房中介、婚庆公司等

代理模式的两个设计原则:

  1. 代理类 与 委托类 具有相似的行为(共同)
  2. 代理类增强委托类的行为

静态代理

静态代理三要素

  • 有共同得行为
  • 目标对象
  • 代理对象

静态代理的特点

  • 目标对象固定
  • 在程序执行前就的到了目标角色
  • 代理对象会增强目标对象的行为

eg

举个例子婚庆公司:你想要结婚找婚庆公司代理

实现相同的接口

public interface Marry {
   
    public void toMarry();
}

目标对象(你)

public class You implements Marry{
   
    @Override
    public void toMarry() {
   
        System.out.println("我要结婚了");
    }
}

婚庆公司

public class Proxy implements Marry{
   
    Marry marry;

    public Proxy(Marry marry) {
   
        this.marry = marry;
    }
    @Override
    public void toMarry() {
   
        before();
        marry.toMarry();
        after
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值