静态代理模式的Java代码
时间: 2023-07-10 07:07:14 浏览: 68
静态代理模式是一种设计模式,它可以在不修改原始类的情况下增强其功能。以下是一个简单的静态代理模式的Java代码示例:
```java
public interface Subject {
void request();
}
public class RealSubject implements Subject {
public void request() {
System.out.println("RealSubject: Handling request.");
}
}
public class Proxy implements Subject {
private RealSubject realSubject;
public Proxy() {
realSubject = new RealSubject();
}
public void request() {
System.out.println("Proxy: Logging request.");
realSubject.request();
System.out.println("Proxy: Logging response.");
}
}
public class Client {
public static void main(String[] args) {
Proxy proxy = new Proxy();
proxy.request();
}
}
```
在上面的代码中,`Subject` 接口定义了一个 `request()` 方法,`RealSubject` 类实现了 `Subject` 接口并实现了 `request()` 方法。`Proxy` 类也实现了 `Subject` 接口,并且它包含一个实际主题的实例。
当客户端调用 `Proxy` 对象的 `request()` 方法时,`Proxy` 对象会记录请求并将其传递给实际主题(即 `RealSubject` 对象)。然后,`Proxy` 对象将响应记录并返回给客户端。