String字符串存储原理

1.所有字符串常量均存在字符串常量池中。

2.凡是双引号括起来的都在字符串常量池中有一份

如下代码:

public class StringTest {

    public static void main(String[] args) {
        String s1 = "abcdef";
        String s2 = "abcdef" + "xy";
    String s3 = new String("xy");
} }

在字符串常量池中会产生三个字符串常量对象,分别是:abcdef,xy,abcdefxy,堆中会创建一个String对象,并且这个对象中的某数据会指向常量池中的xy

并且s1中保存的并不是abcdef,而是这个字符串对象的内存地址

 

posted @ 2020-10-27 19:56  执着的乌龟  阅读(255)  评论(0编辑  收藏  举报