温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
好,我们来看下一个知识点啊,叫cg lab动态代理啊cg lab。C lab的动态代理,这个呢又被称为啊,这个动态代理又称为啊,又称为子类代理啊,子类代理通过动态的在内存中啊,通过动态的在内存中构建啊,构建子类对象重写哎,重写复类,重写复类的方法进行代理。进行代理功能的增强,就是那个你看子类重写复类以后永远记住,就变成子类重写后的内容,无论什么对象指向子类的重写后的实现,看到的都是重写后的内容,这就是子类代理存在的最根本的原因。然后再来看如果目标对象啊,如果目标对象没有实现接口,则只能啊,只能通过。
01:03
则只能通过cg lab啊子类代理啊子类代理来进行功能增强。这就是他存在的意义,因为我们说了JDK动态代理要求必须目标对象时间接口,对吧,你不在乎接口中的方法都代理不了啊,那个是硬性的规定,那么其实我们开发中90%都是这种情况,那还有10%你不能不管吧,你也得管起来,这时候子类代理能够完成这种功能啊,他就干这个事,然后呢,子类代理呢,真正的实现比较复杂。啊,那么子类代理啊,子类代理是通过字节码框架,你听这个名字字解码还是框架asm来实现的哦,这个不要求我们去写,因为我们弄不好这个还不是先天。
02:00
这个JDK自带的,你还得导包啊,我们导的话就使用那个spring spring支持asm的这个字节码框架,导spring的包来做实现,我们不要求你实现,然后我来带你们写一个简版的子类代理的实现。那么功能一样,不过就是更好理解,就是简版的,相当于是一个静态的cg lab啊,我们来实现一下,看看这个原理,看看这个流程就够了。
我来说两句