Jvm ldc如何将字符序列转换为字符串对象?

Jvm ldc如何将字符序列转换为字符串对象?,jvm,bytecode,bytecode-manipulation,Jvm,Bytecode,Bytecode Manipulation,在java字节码中,字符串常量作为字符序列存储在常量池中。我很好奇jvm是如何将其转换为字符串对象的,以及是否有办法将其用于您希望存储在常量池中的其他对象类型。这是一个实现细节,不,您不能将其用于其他类型 最有可能的是,它只是通过utf8info,将所有内容解码为utf16代码点,然后将它们分配到某个数组中。这不是火箭科学。这是一个实现细节,不,你不能把它用于其他类型 最有可能的是,它只是通过utf8info,将所有内容解码为utf16代码点,然后将它们分配到某个数组中。这不是火箭科学。我认为如

在java字节码中,字符串常量作为字符序列存储在常量池中。我很好奇jvm是如何将其转换为字符串对象的,以及是否有办法将其用于您希望存储在常量池中的其他对象类型。

这是一个实现细节,不,您不能将其用于其他类型


最有可能的是,它只是通过utf8info,将所有内容解码为utf16代码点,然后将它们分配到某个数组中。这不是火箭科学。

这是一个实现细节,不,你不能把它用于其他类型


最有可能的是,它只是通过utf8info,将所有内容解码为utf16代码点,然后将它们分配到某个数组中。这不是火箭科学。

我认为如果需要非字符串常量,可以使用invokedynamic和自定义方法查找来创建常量方法句柄。如果需要非字符串常量,可以使用invokedynamic和自定义方法查找来创建常量方法句柄。