字符串常量池

String A =“hello””

String B =“hello””

String AA = new String("AA")

String BB = new String("BB")

字符串常量池在方法区中

其中 变量A  jvm先到字符串常量池中寻找如果没有就在字符串常量池中创建一个字符串Hello,并且将该字符串常量池的Hello的内存地址值给变量A

其中 变量A  jvm先到字符串常量池中寻找 如果该常量池中已经有了这个Hello字符串,就把该字符串的地址值给变量B

其中变量AA jvm先到字符串常量池中寻找 如果没有就在字符串常量池中创建一个字符串Hello,并且在堆内存中创建一个对象把Hello复制到该对象中 ,把该对象的地址值给变量AA

其中变量BB jvm先到字符串常量池中寻找 如果存在就不创建直接把这个Hello字符串复制给,在堆内存中创建的对象,把该对象的地址值给变量BB

原文地址:https://www.cnblogs.com/HufeYao/p/10276744.html