什么是代理?什么是代理类?

修仙得道 / 2023-08-25 / 原文

代理类相当于古代的摄政王!

//接口
public
interface Subject { void request(); }
// 被代理的类
public
class RealSubject implements Subject{ @Override public void request() { System.out.println("RealSubject request"); } }
// 代理类
public
class Proxy implements Subject{ private RealSubject realSubject; public Proxy(RealSubject realSubject) { this.realSubject = realSubject; } @Override public void request() { // 预处理 preRequest(); // 调用真实主题 realSubject.request(); // 后处理 postRequest(); } private void preRequest() { System.out.println("Proxy preRequest"); } private void postRequest() { System.out.println("Proxy postRequest"); } }