String类型的对象,是保存在堆里还是在栈里呢?

String类型的对象,是保存在堆里还是在栈里呢?
在Java的实现中,new出来的String对象一般是放在堆中的。

如果是 String s =“xxx”; 这种,那就是放在常量池中.

JDK6将常量池放在方法区中。

 方法区此时也是持久代。

但是从JDK7开始, 常量池的实现 已经从方法区中移出来放到 堆内存里面了。

在这里插入图片描述
在这里插入图片描述


版权声明:本文为qq_20303591原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。