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

在Java的实现中,new出来的String对象一般是放在堆中的。

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

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

     方法区此时也是持久代。

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

原文地址:https://www.cnblogs.com/java2016/p/5538061.html