我很困惑,什么时候创建了String对象? 我的意思是在编译器识别过程中,编译器识别java类中的每个语句以进行绑定 或者在jvm执行时,jvm根据绑定执行java类中的每个语句。
答案 0 :(得分:1)
在编译时没有实例化对象。无论何种类型,这都是不可能的。
编译java类将其转换为字节代码,此字节代码在JVM中执行,这是在堆中创建对象的位置。
答案 1 :(得分:0)
String s1 =“iByteCode”;
这是如何运作的?
■JVM首先检查String常量池,如果该字符串不存在,它将创建一个新的String对象“iByteCode”,并在池中维护一个引用。变量's1'也指同一个对象。
■此语句创建一个String对象“iByteCode”。