由intern方法聊聊虚拟机内存划分

上图是在jdk1.6里的运行结果 上图是在jdk8中的运行结果 先说原因:1.6中,intern()方法会把首次遇到的字符串实例复制到永久代的字符串常量池 中存储,返回的也是永久代里面这个字符串实例的引用,而由StringBuilder创建的字符串对象实例在 Java堆上,所以必然不可能是同一个引用,结果将返回false。1.6中还有永久代(就是方法区)这个东西,但是到了8没有了。原来的方法区会存
相关文章
相关标签/搜索