Java 使用cglib更改字段值
假设我们有类Java 使用cglib更改字段值,java,reflection,cglib,Java,Reflection,Cglib,假设我们有类java.lang.reflect.field的对象field。可以通过field.set(o1,o2)将对象o1字段的值更改为o2`s字段的值。我想知道是否可以在一些库的帮助下更快地完成,例如cglib 否,JVM实现了一个JIT编译器,它使字节码生成在99.9%的情况下不再适用。在反射的情况下,人们有时使用代码生成来避免反射API暗示的安全检查。与此相反,您应该研究MethodHandles,它将此安全检查移动到句柄创建中,以便在每次调用时不会触发它
java.lang.reflect.field
的对象field
。可以通过field.set(o1,o2)
将对象o1
字段的值更改为o2
`s字段的值。我想知道是否可以在一些库的帮助下更快地完成,例如cglib 否,JVM实现了一个JIT编译器,它使字节码生成在99.9%的情况下不再适用。在反射的情况下,人们有时使用代码生成来避免反射API暗示的安全检查。与此相反,您应该研究MethodHandle
s,它将此安全检查移动到句柄创建中,以便在每次调用时不会触发它