问题:反射,回调的区别在哪里。反射有哪几种反射的实现方式,执行过程(原理是怎么样的)。回调又是如何回调的,写个demo来玩玩~
答:反射常见的有三种方式:jdk动态代理,cglib,aspectj。执行过程分为几种:
1. 通过简单的字节码注入到Jvm中;
2. 在编译class期间,动态的生成子类;
3. 在运行期间,动态的生成子类。
分别对应上面几种执行方式。所以,提前编译class的那个过程,执行效率更高些。但是运行期间的有更大的扩展空间。看自己的业务场景选择不同的反射方式。
回调是通过接口,线程达到非阻塞执行的目的。参考:https://blog.csdn.net/xiaanming/article/details/8703708
答:反射常见的有三种方式:jdk动态代理,cglib,aspectj。执行过程分为几种:
1. 通过简单的字节码注入到Jvm中;
2. 在编译class期间,动态的生成子类;
3. 在运行期间,动态的生成子类。
分别对应上面几种执行方式。所以,提前编译class的那个过程,执行效率更高些。但是运行期间的有更大的扩展空间。看自己的业务场景选择不同的反射方式。
回调是通过接口,线程达到非阻塞执行的目的。参考:https://blog.csdn.net/xiaanming/article/details/8703708