java 类的动态加载主要有这么几个方面
1、新classloading,缺点是无法保存类实例的状态
2、JVM TI,java instrument底层实现是JVMTI,可以在JVM启动之后,进行动态装载:可以改造类,Instrument 更适用于监控和控制虚拟机的行为(在不改变类的情况下,改变类的行为,在JVM底层做AOP)。
3、jdk proxy,cglib--->封装了ASM(Java字节码操控框架,ASM是一套java字节码生成架构,它可以动态生成二进制格式的stub类或其它代理类,或者在类被java虚拟机装入内存之前,动态修改类)----动态字节码生成
4、hotswap(jdk7)