请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于ldc指令

String name = "demo";
对于上面这句话,字节码是ldc,直接从字符串池中获取demo字符串,那如果这个demo之前没有在池中存过呢,会有new的过程吗

正在回答 回答被采纳积分+3

1回答

Vincent文森 2022-04-22 12:31:08

同学你好,“demo”这种字面量形式的字符串声明,就意味着在编译成的class文件的常量池中一定会有“demo”这个常量。这个常量,在类加载阶段就会被放入字符串池。所以代码执行到ldc的时候字符串池中一定会有“demo”。或者也可以理解为“new”的过程其实发生在类加载阶段。

2 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信