1.什么是反射?
反射是Java的一种机制,允许在运行时获取类的信息,访问类中的属性和方法,以及调用类中的方法,使得编程变得更加灵活和可扩展,但是要注意安全和性能问题。
2.什么是序列化?什么情况需要序列化?
序列化是为了保存各种对象在内存中的状态,然后再把数据库中内存的状态读出来
以下情况需要使用Java序列化:
想把一个对象的状态存储在一个文件或者数据库中;
想通过套接字在网络上传送对象得时候;
想通过RMI(远程方法调用)传输对象的时候
3.什么是动态代理?有哪些应用?
动态代理就是运行时动态生成的代理类。
应用场景:spring aop, rpc, Java注解等
4.怎样实现动态代理?
JDK原生动态代理和cglib动态代理,JDK原生动态代理是基于接口实现的,cglib动态代理是基于继承当前子类实现的。