JDK 动态代理是一种在运行时创建代理对象的机制。通过 JDK 动态代理,可以在不修改目标类代码的情况下增强方法的功能。JDK 动态代理需要实现两个核心接口:
InvocationHandler
:用于定义代理对象的方法调用处理逻辑。Proxy
:用于创建代理实例。
1. 定义一个接口
首先,我们需要一个接口,假设我们有一个 UserService
接口:
public interface UserService {void addUser(String name);void deleteUser(String name);
}
2. 实现接口
然后,我们实现这个接口:
public class UserServiceImpl implements UserService {@Overridepublic void addUser(String name) {System.out.println("Adding user: " + name);}@Overridepublic void deleteUser(String name) {System.out.