Java8以后字符串常量池里存放的只是堆中的引用吗?如果以双引号“”定义的和intern定义的有什么

Java8以后字符串常量池里存放的只是堆中的引用吗?如果以双引号“”定义的和intern定义的有什么区别,后者其实就是堆中反向生成到字符串常量池中生成的常量值,能否解释说明一下这种现象?