Java 静态代理的基本

本文介绍了Java静态代理的基本概念,包括代理帮助主要对象完成任务的原理和实现方式。通过一个具体的Marry接口和MarryProxy静态代理类的例子,展示了如何在代理类中调用被代理对象的方法,实现代理前后的额外操作。静态代理的关键在于代理对象和被代理对象都实现同一接口,并在代理对象中调用被代理对象的同名方法。
摘要由CSDN通过智能技术生成

1. 基本概念

  • 所谓的代理就是帮助主要对象完成一项任务,在编程中往往体现为基础环境的搭建

代理的实现原则是:

  1. 被代理的对象与代理对象均需要实现相同的接口,实现相同的方法
  2. 在代理的成员变量中设置代理的对象
  3. 在代理的成员方法中调用被代理对象的同名方法

2. 静态代理的例子

public class MainClass {

    public static void main(String[] args) {
        Bride bride = new Bride();
        MarryProxy marryProxy = new MarryProxy(bride);
        marryProxy.marry();
    }

}

interface Marry{
    void marry();
}

class Bride implements Marry{

    @Override
    public void marry() {
        System.out.println("Bride is marrying");
    }
}


/**
 * 1. 代理的实现需要和被代理的对象实现相同的接口
 * 2. 代理对象在构造方法中传入被代理的对象
 * 3. 在接口的方法中调用被代理对象的方法,实现代理
 * */
class MarryProxy implements Marry{

    private Bride bride;

    public MarryProxy(Bride bride) {
        this.bride = bride;
    }


    @Override
    public void marry() {
        System.out.println("代理前的准备工作!");
        this.bride.marry();
        System.out.println("代理后的结束工作!");
    }
}

在这里插入图片描述


Java的静态代理基本概念

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值