JDK动态代码:jdk动态代码是对接口的实现类进行增加,关键字接口,InvocationHandler(增强接口),Proxy代理类
//接口 第一步
public interface HelloInterface {
void sayHello();
}
//实现方法 第二步
public class Hello implements HelloInterface {
@Override
public void sayHello() {
System.out.println("Hello zhanghao!");
}
}
//处理程序 第三步
public class ProxyHandler implements InvocationHandler {
private Object object;
public ProxyHandler(Object object){
this.object=object;
}
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
System.out.println("before invoice"+method.getName()); //调用方法前
method.invoke(object,args); //调用方法 功能增强
System.out.println("after invoke "+method.getName()); //调用方法后
return null;
}
}
public class test {
public static void main(String[] args) {
HelloInterface hello = new Hello(); //创建接口实现类对像
InvocationHandler handler = new Pr

本文介绍了Java中的动态代码实现,包括JDK动态代码,它依赖于接口和InvocationHandler,以及Proxy代理类来实现。同时,还探讨了cglib动态代码,一种基于继承的代理方式,使用MethodInterceptor接口和Enhancer进行方法增强。
最低0.47元/天 解锁文章
1427

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



