package com.pt;
import com.sun.xml.internal.xsom.XSUnionSimpleType;
import org.aopalliance.intercept.Invocation;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class Main {
public static void main(String[] args) {
InvocationHandler handler = new InvocationHandler() {
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
System.out.println(method);
if (method.getName().equals("morning")) {
System.out.println("Good morning" + args[0]);
}
return null;
}
};
Hello hello = (Hello) Proxy.newProxyInstance(Hello.class.getClassLoader(),//传入ClassLoader
new Class[]{Hello.class},//传入要实现的接口
handler);//传入处理调用方法的InvocationHandler
hello.morning("PT");
}
}
interface Hello {
void morning(String name);
}
动态代理
最新推荐文章于 2024-08-05 07:30:00 发布