A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

String s = new String("abc");   建立两个对象问题,是先建立常量池中的对象,还是先在堆内存中new一个对象? 如果是先在常量池中建立对象,那么传到堆内存中的是“abc” 还是它的地址? 如果是先在堆内存中建立对象,那么传到常量池中的是“abc” 还是它的地址

1 个回复

倒序浏览
String s = new String("abc")创建了两个对象,首先创建了一个“abc"字符串对象,然后用它作为参数传递进s的构造方法中创建了s对象。在内存中这两个对象是不同的实例,"abc"对象由于没有外部指针指向它,它所占有 的内存最终将在某个时候被虚拟机回收

评分

参与人数 1黑马币 +2 收起 理由
r1503882525 + 2 回答认真,么么哒

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马