一、代理模式
一个类代表另一个类去完成扩展功能,在主体类的基础上,新增一个代理类,扩展主体类功能,不影响主体,完成额外功能。比如买车票,可以去代理点买,不用去火车站,主要包括静态代理和动态代理两种模式。
代理类中包含了主体类

二、静态代理
无法根据业务扩展,每一次都要根据主体类,创建一个代理,如果多个主体类,就要多个代理。
创建一个接口
public interface Image { void display(); }
创建实现接口的实体类。
public class RealImage implements Image {
private String fileName;
public RealImage(String fileName){
this.fileName = fileName;
loadFromDisk(fileName);
}
@Override
public void display() {
System.ou
本文介绍了代理模式的概念,通过静态代理和动态代理(包括JDK代理和CGLIB代理)进行详细讲解。静态代理中,代理类固定服务于特定主体类,不便于扩展。动态代理则解决了这一问题,JDK代理基于接口生成代理对象,而CGLIB则是通过继承目标对象生成代理,无需实现接口,调用更简洁。
订阅专栏 解锁全文
410

被折叠的 条评论
为什么被折叠?



